跟着辛星解读PHP中json的使用
由于json是那么的重要,因此PHP自从5.2就增加了对JSON的支持,主要包括两个函数:json_encode和json_decode。众所周知,json是一种数据的存储格式,我的博文里写过json的,在我的Javascript教程中,不明白的读者可以去搜一下。
比如我们新建一个xin.json文件,存储数据如下:
[{"name":"辛星","age":23},{"name":"小倩","age":20}]我们可以写一个api.php文件,解析该json文件如下:
<?php $content = file_get_contents("xin.json"); $obj = json_decode($content); print_r($obj);我们会发现它的输出如下:
Array ( [0] => stdClass Object ( [name] => 辛星 [age] => 23 ) [1] => stdClass Object ( [name] => 小倩 [age] => 20 ) )很好理解,和Javascript很相似,这里的stdClass是基础类,不懂的童鞋可以去搜索下,这里按照我们的格式去输出这个json数据,其实我们使用它们就和我们在Javascript中使用是差不多的,那么我们下面将采用分开输出的样式:
<?php $content = file_get_contents("xin.json"); $obj = json_decode($content); for($i = 0;$i <count($obj);$i++){ echo "名字是:".$obj[$i]->name." 年龄是:".$obj[$i]->age."<br />"; }
名字是:辛星 年龄是:23 名字是:小倩 年龄是:20而json_decode函数可以接受第二个参数的,如果是true的话,那么我们的json数据就会被转化为数组而不是对象了,其实对象和数组在很多时候是很像的,而且在PHP中,对象也不会调用方法。
既然我们队json_decode弄清楚了,那么json_encode就靠读者动动手了,很简单啦。。。。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。