mehr-it/easy-json 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

mehr-it/easy-json

Composer 安装命令:

composer require mehr-it/easy-json

包简介

Easy JSON handling (read/write) for large files

README 文档

README

Parsing JSON files

Here is a simple example how to parse large JSON files:

(new JsonParser($fh))
    ->eachItem('Library.Books', function($parser, $index) {
        // this callback will be invoked for each book            

        $parser
            ->value('Author', $author)
            ->value('ISBN', $isbn)
            ->consume();

        // do s.th. with author and ISBN data

    })
    ->parse();

The following example shows how values can be collected:

(new JsonParser($fh))
    ->collectItemValues('Library.Books.ISBN', $isbns)
    ->parase();

// $isbns now holds the ISBNs of all books

TODO: add more examples and details

Writing JSON files

Here is a simple example how to write JSON files:

$builder = new JsonBuilder($fh);

$builder->write([
    'version' => '1.0',
    'users' => new JsonArray(function(JsonBuilder $builder) {
        foreach(getUsers() as $currUser) {
            yield ['name' => $currUser->name];
        }
    }),
]);

To force a specific JSON data type, you can use the following classes:

  • JsonArray
  • JsonObject
  • JsonNumber

Resources

You can write a resource as JSON string without reading all the stream data into memory:

$builder->write(new JsonResourceString($fh))

You can optionally encode the data as JSON:

$builder->write(new JsonResourceString($fh, true))

统计信息

  • 总下载量: 605
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2021-06-01

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固