PHP中使用json数据格式定义字面量对象的方法
PHPer都知道PHP是不支持字面量了,至少目前版本都不支持。比如,在JS中可以这样定义object
var o = { 'name' : 'qttc' , 'url' : 'www.phpstudy.net' };
alert(o.name);
Python中定义字典,也可以这样定义:
o = { 'name' : 'qttc' , 'url' : 'www.phpstudy.net' }
print o['name']
但在PHP中这么定义object:
$a = { "name" : "qttc", "url" : "www.phpstudy.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.phpstudy.net" }';
$a = json_decode($a);
print_r($a);
执行结果:
[root@lee www]# php a.php
stdClass Object
(
[name] => qttc
[url] => www.phpstudy.net
)
由于PHP不支持字面量or匿名函数,所以使用以上定义的方法定义object时不能添加function到object里,还可以这样添加数组元素:
$a = '{ "name" : "qttc", "url" : "www.phpstudy.net" , "arr":["zhangsan","lisi"] }';
$a = json_decode($a);
print_r($a);
执行结果:
[root@lee www]# php a.php
stdClass Object
(
[name] => qttc
[url] => www.phpstudy.net
[arr] => Array
(
[0] => zhangsan
[1] => lisi
)
)相关阅读:
php截取字符串函数分享
使Mac OS系统在命令行中显示目录树形结构的方法
Linux如何利用ssh传送文件至FTP空间进行备份
C#快速排序算法实例分析
C#生成code128条形码的方法
PHP往XML中添加节点的方法
3分钟写出来的Jquery版checkbox全选反选功能
jQuery中Ajax的get、post等方法详解
解析strtr函数的效率问题
Window10桌面小工具没人用 五大功能即将被砍
c语言实现多线程动画程序示例
分享jQuery插件的学习笔记
微软MWC 2015新闻发布会邀请函曝光
正则表达式详细介绍(上)