PHP中使用json数据格式定义字面量对象的方法
PHP中使用json数据格式定义字面量对象的方法
发布时间:2016-12-29 来源:查字典编辑
摘要:PHPer都知道PHP是不支持字面量了,至少目前版本都不支持。比如,在JS中可以这样定义object复制代码代码如下:varo={'name...

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

复制代码 代码如下:

var o = { 'name' : 'qttc' , 'url' : 'www.jb51.net' };

alert(o.name);

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

复制代码 代码如下:

o = { 'name' : 'qttc' , 'url' : 'www.jb51.net' }

print o['name']

但在PHP中这么定义object:

复制代码 代码如下:

$a = { "name" : "qttc", "url" : "www.jb51.net" };

会报错:

复制代码 代码如下:

[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.jb51.net" }';

$a = json_decode($a);

print_r($a);

执行结果:

复制代码 代码如下:

[root@lee www]# php a.php

stdClass Object

(

[name] => qttc

[url] => www.jb51.net

)

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

复制代码 代码如下:

$a = '{ "name" : "qttc", "url" : "www.jb51.net" , "arr":["zhangsan","lisi"] }';

$a = json_decode($a);

print_r($a);

执行结果:

复制代码 代码如下:

[root@lee www]# php a.php

stdClass Object

(

[name] => qttc

[url] => www.jb51.net

[arr] => Array

(

[0] => zhangsan

[1] => lisi

)

)

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新php教程学习
热门php教程学习
编程开发子分类