mszewcz / php-json-utils
JSON 工具类
1.0.0
2017-11-01 22:42 UTC
Requires
- php: >=7.1.0
Requires (Dev)
- codacy/coverage: dev-master
- phpunit/phpunit: ^6.3
This package is auto-updated.
Last update: 2024-09-16 09:04:34 UTC
README
JSON 工具类,提供编码、解码、base64url 编码和 base64url 解码方法。
内容
安装
如果您使用 Composer 来管理依赖,只需在您的项目的 composer.json 文件中添加对 mszewcz/php-json-utils
的依赖即可。以下是一个 composer.json 的最小示例
{
"require": {
"mszewcz/php-json-utils": ">=1.0"
}
}
您也可以克隆或下载此存储库。
php-json-utils 符合 PSR-4 自动加载标准。如果您使用 Composer,请包括其自动加载文件
require_once 'vendor/autoload.php';
如果您已克隆或下载了此存储库,您将需要自己编写 PSR-4 风格的自动加载实现。
用法
将数据编码为 JSON 字符串
use MS\Json\Utils\Utils; $obj = new \stdClass(); $obj->flt = 5.5; $obj->bool = true; $data = ['int' => 8, 'str' => 'test/Ʃ', 'arr' => [$obj]]; $utils = new Utils(); try { $encoded = $utils->encode($data); } catch (\Exception $e) { echo $e->getMessage(); }
解码 JSON 字符串
use MS\Json\Utils\Utils; $json = '{"int":8,"str":"test/Ʃ","arr":[{"flt":5.5,"bool":true}]}'; $utils = new Utils(); try { $decoded = $utils->decode($json); } catch (\Exception $e) { echo $e->getMessage(); } */
对字符串进行 base64url 编码
use MS\Json\Utils\Utils; $data = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc eget purus '; $data.= 'consectetur eros pellentesque ullamcorper. Sed justo tellus, porttitor non '; $data.= 'porta ac, euismod eu mauris. Nam maximus pretium dapibus. Pellentesque in elit '; $data.= 'placerat, sagittis justo id, elementum elit. Maecenas dignissim dui ac lectus '; $data.= 'pretium condimentum. Morbi id ipsum in urna egestas varius in vitae quam. '; $data.= 'Phasellus efficitur elementum sapien id dictum.'; $utils = new Utils(); $encoded = $utils->base64UrlEncode($data);
对字符串进行 base64url 解码
use MS\Json\Utils\Utils; $data = 'TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdC4'; $data.= 'gTnVuYyBlZ2V0IHB1cnVzIGNvbnNlY3RldHVyIGVyb3MgcGVsbGVudGVzcXVlIHVsbGFtY29ycG'; $data.= 'VyLiBTZWQganVzdG8gdGVsbHVzLCBwb3J0dGl0b3Igbm9uIHBvcnRhIGFjLCBldWlzbW9kIGV1I'; $data.= 'G1hdXJpcy4gTmFtIG1heGltdXMgcHJldGl1bSBkYXBpYnVzLiBQZWxsZW50ZXNxdWUgaW4gZWxp'; $data.= 'dCBwbGFjZXJhdCwgc2FnaXR0aXMganVzdG8gaWQsIGVsZW1lbnR1bSBlbGl0LiBNYWVjZW5hcyB'; $data.= 'kaWduaXNzaW0gZHVpIGFjIGxlY3R1cyBwcmV0aXVtIGNvbmRpbWVudHVtLiBNb3JiaSBpZCBpcH'; $data.= 'N1bSBpbiB1cm5hIGVnZXN0YXMgdmFyaXVzIGluIHZpdGFlIHF1YW0uIFBoYXNlbGx1cyBlZmZpY'; $data.= '2l0dXIgZWxlbWVudHVtIHNhcGllbiBpZCBkaWN0dW0u'; $utils = new Utils(); $decoded = $utils->base64UrlDecode($data);
贡献
欢迎贡献。请通过 GitHub 拉取请求发送您的贡献
为错误修复的拉取请求必须基于 master
分支的最新稳定版本,而新功能的拉取请求必须基于 developer
分支。
由于时间限制,我可能无法像期望的那样快速回应。如果您觉得等待合并您的拉取请求的时间过长,请在此提醒我。
编码标准
我们遵循 PSR-2 编码风格和 PSR-4 自动加载标准。在发送您的拉取请求之前,请确保您也遵循这些标准。
许可证
php-json-utils 采用 MIT 许可证 - 有关详细信息,请参阅 LICENSE
文件。