当前位置:Gxlcms > PHP教程 > php读取数据后转换成json输出_PHP教程

php读取数据后转换成json输出_PHP教程

时间:2021-07-01 10:21:17 帮助过:12人阅读

现在很多网站都用了异步加载的技术,大部分加载的数据格式都是json的(比如{"order":"205","205":"\u81ea\u9009\u80a1"}),下面就给大家罗列下php读取数据后转换成json输出的几种方法。

第一种最简单的最常用的也就是拼字符串的方法,这里我就不多介绍了

第二种就是借助json_encode函数

执行下面代码


[php]
var_dump(json_decode('{"order":"205","205":"\u81ea"}'));

var_dump(json_decode('{"order":"205","205":"\u81ea"}'));
后结果为:

object(stdClass)#1 (2) { ["order"]=> string(3) "205" ["205"]=> string(3) "自" }


因此转换前需要定义一个stdClass的对象,对其赋值后执行下json_encode函数就得到了需要的结果。

后来发现,定义一个数组也是可以实现的,只要最后的数组格式为:array(order=>205,"205"=>"\u81ea")就可以了,这样的话给数组添加新元素的话就不能通过array_push的方式,而是要通过索引的方式赋值$arr["order"]="205";

两者的优缺点

第一种执行速度比第二种相对要快些(本人已做了demo测试过),缺点是拼字符串的时候,有很多引号之类的,不太注意的话容易出错

第二种更符合面向对象编程的习惯,并且会把中文unicode编码的,缺点是是多了些包装数据,解析数据的过程,因此速度相对会慢些,但是是完全可以接受的

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/477605.htmlTechArticle现在很多网站都用了异步加载的技术,大部分加载的数据格式都是json的(比如{order:205,205:\u81ea\u9009\u80a1}),下面就给大家罗列下php读取数...

人气教程排行