当前位置:首页 > PHP > 正文内容

引入colinodell / json5:适用于PHP的UTF-8兼容JSON5解析器

高老师6年前 (2020-10-31)PHP1412

JSON5是JSON的JS兼容扩展,它允许注释,尾随逗号,单引号字符串等:

colinodell / json5特性:

  • 完全支持UTF-8

  • 支持assoc标志,最大深度以及将大整数转换为字符串

  • 经过官方规格测试

安装/使用

只需使用Composer安装该库即可:

composer require colinodell/json5

这个软件包增加了一个json5_decode()功能,可以代替PHP的内置功能json_decode():

$json = file_get_contents('foo.json5');$arr = json5_decode($json);

它采用与json_decode()相同顺序相同的确切参数。这意味着您可以通过简单的查找和替换来升级代码以支持JSON5!

如果您仍想避免使用此全局函数,请随时调用staticJson5Decoder::decode()方法。(json5_decode()为方便起见,仅代理此方法)

此外,还有一个json5可执行文件,可用于通过命令行将JSON5转换为纯JSON:

json5 file.json5 > file.json

扫描二维码推送至手机访问。

版权声明:本文由高久峰个人博客发布,如需转载请注明出处。

本文链接:https://blog.20230611.cn/post/183.html

分享给朋友:

“引入colinodell / json5:适用于PHP的UTF-8兼容JSON5解析器” 的相关文章

php 将数组键值转为变量

php 将数组键值转为变量

<?php $data=array('a'=>1,'b'=>2,'c'=>3,'d'=>4); extract($data); var_dump($a,$b,$c,$d); ?>在人人商城中捡到的...

php解决浮点数精度问题

php解决浮点数精度问题

首先看看以下代码:代码1:<?php $a=0.1; $b=0.7; if($a+$b==0.8) { echo "1"; } else{ echo "2"; } ?>代码2:<?php   &n...

php上传大文件,php大文件上传

php上传大文件,php大文件上传

(1).前端文件:<form action="upload.php" method="post" enctype="multipart/form-data">    &...

PHP获取站点根目录,PHP获取应用根目录,cgi和cli都支持

PHP获取站点根目录,PHP获取应用根目录,cgi和cli都支持

重构框架的时候想要考虑支持下cli模式,于是参考了thinkphp的底层。/**  * 获取应用根目录  * @return string  */ public static function getRootP...

php  while  true  cpu占用100%

php while true cpu占用100%

在编写多进程的实例中我在每个进程中使用如下代码://调用等待信号的处理器 while (true) {     pcntl_signal_dispatch(); }开启5个进程,cpu直接100%修正之后的代码://调用等待信号的处理器 while&...

PHP yield  PHP协程,PHP协程用法学习

PHP yield PHP协程,PHP协程用法学习

【一】.迭代器迭代是指反复执行一个过程,每执行一次叫做一次迭代。比如下面的代码就叫做迭代:1.  <?php   2.  $data = ['1', '2', &...