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


Posted in PHP onAugust 20, 2014

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

var o = { 'name' : 'qttc' , 'url' : '3water.com' };

alert(o.name);

Python中定义字典,也可以这样定义:
o = { 'name' : 'qttc' , 'url' : '3water.com' }

print o['name']

但在PHP中这么定义object:
$a = { "name" : "qttc", "url" : "3water.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" : "3water.com"  }';

$a = json_decode($a);

print_r($a);

执行结果:
[root@lee www]# php a.php 

stdClass Object

(

    [name] => qttc

    [url] => 3water.com

)

由于PHP不支持字面量or匿名函数,所以使用以上定义的方法定义object时不能添加function到object里,还可以这样添加数组元素:
$a = '{ "name" : "qttc", "url" : "3water.com" , "arr":["zhangsan","lisi"] }';

$a = json_decode($a);

print_r($a);

执行结果:
[root@lee www]# php a.php 

stdClass Object

(

    [name] => qttc

    [url] => 3water.com

    [arr] => Array

        (

            [0] => zhangsan

            [1] => lisi

        )

 

)
PHP 相关文章推荐
使用PHP维护文件系统
Oct 09 PHP
Discuz板块横排显示图片的实现方法
May 28 PHP
php set_time_limit()函数的使用详解
Jun 05 PHP
关于file_get_contents返回为空或函数不可用的解决方案
Jun 24 PHP
php模板原理讲解
Nov 13 PHP
php最简单的删除目录与文件实现方法
Nov 28 PHP
PHP获取数组长度或某个值出现次数的方法
Feb 11 PHP
Yii使用技巧大汇总
Dec 29 PHP
[原创]PHP简单开启curl的方法(测试可行)
Jan 11 PHP
twig模板获取全局变量的方法
Feb 05 PHP
PHP基于GD库的图像处理方法小结
Sep 27 PHP
PHP实现的简单sha1加密功能示例
Aug 27 PHP
PHP采用自定义函数实现遍历目录下所有文件的方法
Aug 19 #PHP
浅谈php函数serialize()与unserialize()的使用方法
Aug 19 #PHP
PHP将回调函数作用到给定数组单元的方法
Aug 19 #PHP
php实现文件下载代码分享
Aug 19 #PHP
PHP中array_map与array_column之间的关系分析
Aug 19 #PHP
phpword插件导出word文件时中文乱码问题处理方案
Aug 19 #PHP
PHP防止表单重复提交的几种常用方法汇总
Aug 19 #PHP
You might like
教你识别简单的免查杀PHP后门
2015/09/13 PHP
解决laravel-admin 自己新建页面里 js 需要刷新一次的问题
2019/10/03 PHP
laravel框架中视图的基本使用方法分析
2019/11/23 PHP
用unescape反编码得出汉字示例
2014/04/24 Javascript
jQuery产品间断向下滚动效果核心代码
2014/05/08 Javascript
javascript实现点击提交按钮后显示loading的方法
2015/07/03 Javascript
javascript实现多栏闭合展开式广告位菜单效果实例
2015/08/05 Javascript
JavaScript中Boolean对象的属性解析
2015/10/21 Javascript
js继承实现方法详解
2016/12/16 Javascript
javascript内存分配原理实例分析
2017/04/10 Javascript
基于bootstrap实现多个下拉框同时搜索功能
2017/07/19 Javascript
javascript将list转换成树状结构的实例
2017/09/08 Javascript
setTimeout时间设置为0详细解析
2018/03/13 Javascript
小程序跨页面交互的作用与方法详解
2020/01/07 Javascript
JavaScript对象原型链原理解析
2020/01/22 Javascript
JS面向对象编程基础篇(二) 封装操作实例详解
2020/03/03 Javascript
详解JavaScript执行模型
2020/11/16 Javascript
[07:59]2014DOTA2叨叨刀塔 林熊猫称被邀请赛现场盛况震撼
2014/07/21 DOTA
Django学习笔记之为Model添加Action
2019/04/30 Python
Python定时任务APScheduler的实例实例详解
2019/07/22 Python
Python 一键获取百度网盘提取码的方法
2019/08/01 Python
Python线程障碍对象Barrier原理详解
2019/12/02 Python
基于python3实现倒叙字符串
2020/02/18 Python
CSS3 毛玻璃效果
2019/08/14 HTML / CSS
使用canvas压缩图片上传的方法示例
2020/02/07 HTML / CSS
三年级语文教学反思
2014/02/01 职场文书
2014国培学习感言
2014/03/05 职场文书
产品质量承诺范本
2014/03/31 职场文书
演讲稿格式
2014/04/30 职场文书
艾滋病宣传活动总结
2014/05/08 职场文书
科长竞聘演讲稿
2014/05/16 职场文书
简单的辞职信怎么写
2015/02/28 职场文书
2015年学生会工作总结范文
2015/03/31 职场文书
2015年学校教育教学工作总结
2015/04/22 职场文书
简单的辞职信模板
2015/05/12 职场文书
html+css实现环绕倒影加载特效
2021/07/07 HTML / CSS