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 相关文章推荐
图书管理程序(一)
Oct 09 PHP
PHP生成带有雪花背景的验证码
Sep 28 PHP
thinkphp的CURD和查询方式介绍
Dec 19 PHP
php实现把数组按指定的个数分隔
Feb 17 PHP
PHP动态规划解决0-1背包问题实例分析
Mar 23 PHP
10个值得深思的PHP面试题
Nov 14 PHP
深入讲解PHP的对象注入(Object Injection)
Mar 01 PHP
php简单处理XML数据的方法示例
May 19 PHP
PHP实现压缩图片尺寸并转为jpg格式的方法示例
May 10 PHP
php实现表单提交上传文件功能
May 28 PHP
使用Entrust扩展包在laravel 中实现RBAC的功能
Mar 16 PHP
THINKPHP-Apache服务器中使用Alias虚拟目录URL重写 隐藏index.php
Mar 09 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获取谷歌PR值算法,附上php查询PR值代码示例
2011/12/25 PHP
PHP的异常处理类Exception的使用及说明
2012/06/13 PHP
php连接oracle数据库及查询数据的方法
2014/12/29 PHP
PHP常用工具类大全附全部代码下载
2015/12/07 PHP
php版微信公众号自定义分享内容实现方法
2016/09/22 PHP
提高jQuery性能的十个诀窍
2013/11/14 Javascript
jQuery计算textarea中文字数(剩余个数)的小程序
2013/11/28 Javascript
解决Jquery鼠标经过不停滑动的问题
2014/03/03 Javascript
JS实现浏览器状态栏显示时间的方法
2015/10/27 Javascript
js运动应用实例解析
2015/12/28 Javascript
IntersectionObserver API 详解篇
2016/12/11 Javascript
JavaScript下拉菜单功能实例代码
2017/03/01 Javascript
ES6与CommonJS中的模块处理的区别
2018/06/13 Javascript
js实现简易ATM功能
2020/10/27 Javascript
[02:25]专访DOTA2负责人Erik 国际邀请赛暂不会离开西雅
2014/07/21 DOTA
状态机的概念和在Python下使用状态机的教程
2015/04/11 Python
Python分析学校四六级过关情况
2017/11/22 Python
python利用百度AI实现文字识别功能
2018/11/27 Python
Python中dict和set的用法讲解
2019/03/28 Python
python使用Plotly绘图工具绘制水平条形图
2020/03/25 Python
python爬虫项目设置一个中断重连的程序的实现
2019/07/26 Python
树莓派3 搭建 django 服务器的实例
2019/08/29 Python
python3.9实现pyinstaller打包python文件成exe
2020/12/13 Python
英国在线照明超市:Castlegate Lights
2019/10/30 全球购物
全球最大运动品牌的男装、女装和童装官方库存商:A&A Sports
2021/01/17 全球购物
瀑布模型都有哪些优缺点
2014/06/23 面试题
西式婚礼证婚词
2014/01/12 职场文书
高中英语教学反思
2014/02/04 职场文书
优秀团支部事迹材料
2014/02/08 职场文书
2014企业领导班子四风对照检查材料思想汇报
2014/09/17 职场文书
服务明星事迹材料
2014/12/29 职场文书
消防验收申请报告
2015/05/15 职场文书
乡镇团委工作总结2015
2015/05/26 职场文书
高三教师工作总结2015
2015/07/21 职场文书
2015教师个人德育工作总结
2015/07/22 职场文书
小程序教您怎样你零成本推广获取数万用户的方法
2019/07/30 职场文书