PHP中使用json数据格式定义字面量对象的方法_PHP

WBOY
發布: 2016-05-31 19:30:40
原創
843 人瀏覽過

JSON

PHPer都知道PHP是不支持字面量了,至少目前版本都不支持。比如,在JS中可以这样定义object

代码如下:


var o = { 'name' : 'qttc' , 'url' : 'www.bitsCN.com' };
alert(o.name);


Python中定义字典,也可以这样定义:

代码如下:


o = { 'name' : 'qttc' , 'url' : 'www.bitsCN.com' }
print o['name']


但在PHP中这么定义object:

代码如下:


$a = { "name" : "qttc", "url" : "www.bitsCN.com"  };


会报错:

代码如下:


[root@lee www]# php a.php
PHP Parse error:  syntax error, unexpected '{' in /data0/htdocs/www/a.php on line 4


我们可以借用json格式,用引号把包下然后再json_decoude就好。

代码如下:


$a = '{ "name" : "qttc", "url" : "www.bitsCN.com"  }';
$a = json_decode($a);
print_r($a);


执行结果:

代码如下:


[root@lee www]# php a.php
stdClass Object
(
    [name] => qttc
    [url] => www.bitsCN.com
)


由于PHP不支持字面量or匿名函数,所以使用以上定义的方法定义object时不能添加function到object里,还可以这样添加数组元素:

代码如下:


$a = '{ "name" : "qttc", "url" : "www.bitsCN.com" , "arr":["zhangsan","lisi"] }';
$a = json_decode($a);
print_r($a);


执行结果:

代码如下:


[root@lee www]# php a.php
stdClass Object
(
    [name] => qttc
    [url] => www.bitsCN.com
    [arr] => Array
        (
            [0] => zhangsan
            [1] => lisi
        )
 
)

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板