PHP的json_encode()函数的引号
PHP的json_encode()函数的引号
(1)数组的索引和值都使用双引号
$a = ["id"=>1,"age"=>12,"name"=>"张三"];
var_dump(json_encode($a));
//结果:string(39) "{"id":1,"age":12,"name":"\u5f20\u4e09"}";
(2)数组的索引和值都使用单引号
$b = ['id'=>1,'age'=>12,'name'=>'张三'];
var_dump(json_encode($b));
//结果:string(39) "{"id":1,"age":12,"name":"\u5f20\u4e09"}"
说明:
比较结果可以看出,转成json后结果是一样的,
说明函数json_encode()转化后都为双引号。
注意,json字符串的外层是双引号,内层也是双引号,看起来是这样,转义的斜杠在打印到屏幕上时是不显示出来的。
下面的示例可以说明:
先定义json字符串,然后看是否可以转化成数组:
(1)直接使用上面打印出来的json字符串
$a = "{"id":1,"age":12,"name":"\u5f20\u4e09"}";
var_dump(json_decode($a,true));
结论:直接报错:Parse error: syntax error, unexpected 'id' (T_STRING) in ...
都是用双引号,报错。
(2)使用单引号把json数据引起来
$a = '{"id":1,"age":12,"name":"\u5f20\u4e09"}';//正确的json数据
var_dump(json_decode($a,true));
结论:正常运行,正常解析。
(3)外层还是用双引号,内层使用斜杠转义:
$a = "{\"id\":1,\"age\":12,\"name\":\"\u5f20\u4e09\"}";
var_dump(json_decode($a,true));
结论:正常运行,正常解析。
(4)外层使用双引号,内层使用单引号:
$a = "{'id':1,'age':12,'name':'\u5f20\u4e09'}";
var_dump(json_decode($a,true));
结果是NULL,也不是正常的json数据。
结论:
1、内层的索引和值必须是双引号;
2、外层是单引号时,内层的双引号不需要转义;
3、外层是双引号时,内层的双引号需要转义。
PHP的json_encode()函数的引号的更多相关文章
- PHP的json_encode()函数与JSON对象
一.问题描述 这周搬砖的时候,前端通过ajax获取后端的数据后,照例用 对象.属性 的方式取值,然而结果总是总是不能如预期般展示在页面上. 先写个 demo 还原下场景:选中一个下拉框列表选项后,会在 ...
- JSON:使用json_encode函数解析结果为Null
1.首先,数据库中的json数据是这样的 2.仓鼠使用json_encode()函数进行解析json数据时,显示了一个NULL: 3.这时候,我们需要使用,表示在解析json之前,该json是有语法错 ...
- PHP json_encode() 函数介绍
在 php 中使用 json_encode() 内置函数(php > 5.2)可以使用得 php 中数据可以与其它语言很好的传递并且使用它. 这个函数的功能是将数值转换成json数据存储格式. ...
- (转载)PHP json_encode() 函数介绍
(转载) 在 php 中使用 json_encode() 内置函数(php > 5.2)可以使用得 php 中数据可以与其它语言很好的传递并且使用它. 这个函数的功能是将数值转换成json数据存 ...
- php的json_encode函数问题
php的json_encode函数问题: $ary = []; $ary[0] = 'a'; $ary[1] = 'b'; echo json_encode($ary) . '<br>'; ...
- PHP json_encode函数中需要注意的地方
在php中使用 json_encode() 内置函数可以使用得php中的数据更好的与其它语言传递与使用. 这个函数的功能是将数组转换成json数据存储格式: 1 <?php 2 $arr=arr ...
- [php] php - json_encode 函数
json_encode()函数, $arr= array("key"=>null); echo json_encode($arr);{"key":null ...
- php数组使用json_encode函数中文被编码成null的原因和解决办法
大写的囧,提客户处理问题,前端的APP一直在叽叽咂咂,说收到的值是null,弄了半天原来是这个问题,记录下吧 json格式在开发中用的十分广泛.在php中json_encode函数可以直接将数组转成 ...
- 将数组转化为json字符串(不使用json_encode函数)
将数组转化为json字符串(不使用json_encode函数) public function arrayToJson($arr,$jsonStr=''){ $jsonStr.='{'; foreac ...
随机推荐
- git使用stash存储相关操作
git stash 将当前修改存储起来 git stash apply 恢复最近一次存储 git stash apply stash@{2} 恢复某一次存储 git stash list 查看存储列 ...
- nginx下配置laravel+rewrite重写
server { listen ; server_name ha.d51v.cn; #access_log /data/wwwlogs/access_nginx.log combined; root ...
- Python爬虫系列-分析Ajax请求并抓取今日头条街拍图片
1.抓取索引页内容 利用requests请求目标站点,得到索引网页HTML代码,返回结果. 2.抓取详情页内容 解析返回结果,得到详情页的链接,并进一步抓取详情页的信息. 3.下载图片与保存数据库 将 ...
- GoogleTest 之路3-Mocking Framework
当你写一个原型或者测试的时候,依赖整个object 是不可行和明智的.一个 mock object和 real object 有同样的接口(所以它可以像同一个使用),但是让你在运行时进行指定它应该如何 ...
- redis集群监控之Redis-monitor部
为了对以后有可能面临的redis集群监控做准备,这两天在准备这方面的事情,现在将其中的过程记录一下. 首先是“Ronney-Hua”的这篇文章对三中开源监控软件做了对比 文章地址:https://bl ...
- LeetCode(304)Range Sum Query 2D - Immutable
题目 Given a 2D matrix matrix, find the sum of the elements inside the rectangle defined by its upper ...
- LeetCode(123) Best Time to Buy and Sell Stock III
题目 Say you have an array for which the ith element is the price of a given stock on day i. Design an ...
- 合肥工业大学宣城校区大学生创新创业训练项目申报书:“基于Spark平台的人工智能知识的知识图谱构建”
- 等待唤醒(wait / notify)机制
如果一个线程从头到尾执行完也不和别的线程打交道的话,那就不会有各种安全性问题了.但是协作越来越成为社会发展的大势,一个大任务拆成若干个小任务之后,各个小任务之间可能也需要相互协作最终才能执行完整个大任 ...
- C++异常安全的赋值运算符重载 【微软面试100题 第五十五题】
题目要求: 类CMyString的声明如下: class CMyString { public: CMyString(char *pData=NULL); CMyString(const CMyStr ...