docteurklein / json-chunks
使用生成器进行流式处理的JSON编码器
1.0.1
2018-09-13 09:49 UTC
Requires (Dev)
- phpspec/phpspec: ^4.3
This package is auto-updated.
Last update: 2024-08-29 05:06:14 UTC
README
什么?
一个php库,允许流式传输JSON文档的块。
如何?
它利用了php生成器和原生的json_encode
函数。
要开始流式传输文档的部分,传递一个yield
可序列化值的函数。
注意:您可以嵌套多个生成器。
示例
$chunks = DocteurKlein\JsonChunks\Encode::from([ '_links' => [ 'product' => function() { yield from [1, 2, 3]; }, ], '_embedded' => [ 'product' => function() { yield from [ 1, 2, function() { yield from [3]; } ]; }, ], ]); foreach ($chunks as $chunk) { echo $chunk; }
权衡
- 此库不会尝试格式化流式内容。它提供了一个用于调试目的的
pretty
选项,但这会缓冲整个输出,因此不再进行流式传输。 - 包含数字和字符串索引的数组将根据第一个键的类型编码为JSON对象或数组。