欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

JSOND--一个更优的PHP JSON解析器

程序员文章站 2024-01-12 12:03:10
...
JSOND:一个更优的PHP JSON解析器

首先,我们先来看看性能测试数据:

01 STR: { "i" : 23, "array" : [1, null, false, true, [ "aha" , "baba" , 23, { "test" : 23}]]}
02 JSON: time for 100000 iterations: 0.238321
03 JSOND: time for 100000 iterations: 0.236436

04

05 STR: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
06 JSON: time for 100000 iterations: 0.110764
07 JSOND: time for 100000 iterations: 0.134212

08

09 STR: { "a" : 23.2234232}
10 JSON: time for 100000 iterations: 0.078458
11 JSOND: time for 100000 iterations: 0.055479

12

13 STR: { "long-str" : "At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat." , }
14 JSON: time for 100000 iterations: 0.881429
15 JSOND: time for 100000 iterations: 0.118529

16

17 STR: ... json_encode($_SERVER)
18 JSON: time for 100000 iterations: 4.341252
19 JSOND: time for 100000 iterations: 1.960814

可以看到在大数据量的时候jsond的速度比json快多了。

根据自身情况,选择相应的安装方法,安装成功后,查看phpinfo:

使用方法:

mixed jsond_decode ( string $json [, bool $assoc = false [, int $depth = 512 [, int $options = 0 ]]] );string jsond_encode ( mixed $value [, int $options = 0 [, int $depth = 512 ]] );string jsond_last_error_msg ( void );int jsond_last_error ( void );