gromnan / json-crunch
通过最小化重复并提高压缩性来优化JSON响应。
v1.0.0
2018-07-14 21:30 UTC
This package is auto-updated.
Last update: 2024-08-29 04:43:13 UTC
README
PHP实现node模块graphql-crunch
。
通过最小化重复并提高压缩性来优化JSON响应。
安装
composer require gromnan/json-crunch
它是如何工作的?
我们使用后序遍历对象图将对象层次结构扁平化为数组。在遍历过程中,我们高效地检查是否之前已遇到过值,包括数组和对象,并在看到它时用其早期出现的位置引用替换它。值只在数组中存在一次。
用法
use function GromNaN\JsonCrunch\crunch; $data = json_decode('{"a":["a","b","a"],"b":["a","b","a"]}'); $crunched = crunch($data); echo json_encode($data, JSON_PRETTY_PRINT);
结果
[ "a", "b", [0,1,0], {"a":2,"b":2} ]
命令行
bin/crunch-json <file>