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 相关文章推荐
require(),include(),require_once()和include_once()的异同
Jan 02 PHP
PHP中函数内引用全局变量的方法
Oct 20 PHP
PHP 缓存实现代码及详细注释
May 16 PHP
php 中英文语言转换类
Sep 07 PHP
PHP序列号生成函数和字符串替换函数代码
Jun 07 PHP
php导入导出excel实例
Oct 25 PHP
PHP模拟登陆163邮箱发邮件及获取通讯录列表的方法
Mar 07 PHP
PHP中的魔术方法总结和使用实例
May 11 PHP
php中关于socket的系列函数总结
May 18 PHP
php实现表单多按钮提交action的处理方法
Oct 24 PHP
PHP操作MySQL的mysql_fetch_* 函数的常见用法教程
Dec 25 PHP
PHP实现的装箱算法示例
Jun 23 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循环输出数据库内容的代码
2008/05/24 PHP
php页面缓存ob系列函数介绍
2012/10/18 PHP
PHP统一页面编码避免乱码问题
2015/04/09 PHP
PHP实现的折半查询算法示例
2017/10/09 PHP
tp5框架前台无限极导航菜单类实现方法分析
2020/03/29 PHP
JS location几个方法小姐
2008/07/09 Javascript
查看大图功能代码jquery版
2013/11/05 Javascript
怎么选择Javascript框架(Javascript Framework)
2013/11/22 Javascript
jQuery根据ID获取input、checkbox、radio、select的示例
2014/08/11 Javascript
基于js实现微信发送好友如何分享到朋友圈、微博
2015/11/30 Javascript
JavaScript蒙板(model)功能的简单实现代码
2016/08/04 Javascript
javascript 中的console.log和弹出窗口alert
2016/08/30 Javascript
jQuery自定义组件(导入组件)
2016/11/08 Javascript
一个炫酷的Bootstrap导航菜单
2016/12/28 Javascript
Jquery EasyUI Datagrid右键菜单实现方法
2016/12/30 Javascript
JavaScript 中 apply 、call 的详解
2017/03/21 Javascript
微信小程序 滚动到某个位置添加class效果实现代码
2017/04/19 Javascript
bootstrap多层模态框滚动条消失的问题
2017/07/21 Javascript
浅谈vue的踩坑路
2017/08/31 Javascript
新版vue-cli模板下本地开发环境使用node服务器跨域的方法
2018/04/03 Javascript
小程序云开发部署攻略(图文教程)
2018/10/30 Javascript
js实现经典贪吃蛇小游戏
2020/03/19 Javascript
微信小程序 wx:for 与 wx:for-items 与 wx:key的正确用法
2020/05/19 Javascript
[15:57]教你分分钟做大人:斧王
2014/10/30 DOTA
Python教程之全局变量用法
2016/06/27 Python
Php多进程实现代码
2018/05/07 Python
python使用webdriver爬取微信公众号
2018/08/31 Python
python爬虫解决验证码的思路及示例
2019/08/01 Python
Pytorch中.new()的作用详解
2020/02/18 Python
HTML 5 input placeholder 属性如何完美兼任ie
2014/05/12 HTML / CSS
HelloFresh奥地利:立即订购烹饪盒
2019/02/22 全球购物
写给老师的表扬信
2014/01/21 职场文书
幼儿园教师师德师风演讲稿:爱我所爱 无悔青春
2014/09/10 职场文书
学生乘坐校车安全责任书
2015/05/11 职场文书
2015年公司保安年终工作总结
2015/05/14 职场文书
python图像处理基本操作总结(PIL库、Matplotlib及Numpy)
2021/06/08 Python