PHP的json_encode()函数的引号

摘要:
PHP的json_encode()函数的引号数组的索引和值使用双引号$a=[“id”=˃1,“age”=˃12,“name”=˃“Zhang San”];var_转储;//结果:字符串“{”id“:1,”age“:12,”name“:”u5f20u4e09“}”;数组的索引和值使用单引号$b=['id'=˃1,'age'=˃12,'name'=˃'Zhang San'];var_转储;//结果:string“{”id“:1,”age“:12,”name“:”u5f20u4e09“}”描述:比较结果显示转换为json后的结果相同,表示函数json_Encode()转换为双引号。下面的示例可以说明:首先定义json字符串,然后查看它是否可以转换为数组:直接使用上面打印的json字符串$a=“{”id“:1,”age“:12,”name“:”u5f20u4e09“}”;var_转储;结论:直接错误:Parserror:语法错误,中意外的“id”。它们都使用双引号并报告错误。
PHP的json_encode()函数的引号

(1)数组的索引和值都使用双引号

$a = ["id"=>1,"age"=>12,"name"=>"张三"];
var_dump(json_encode($a));
//结果:string(39) "{"id":1,"age":12,"name":"u5f20u4e09"}";

(2)数组的索引和值都使用单引号
$b = ['id'=>1,'age'=>12,'name'=>'张三'];
var_dump(json_encode($b));
//结果:string(39) "{"id":1,"age":12,"name":"u5f20u4e09"}"

说明:
比较结果可以看出,转成json后结果是一样的,
说明函数json_encode()转化后都为双引号。

注意,json字符串的外层是双引号,内层也是双引号,看起来是这样,转义的斜杠在打印到屏幕上时是不显示出来的。

下面的示例可以说明:

先定义json字符串,然后看是否可以转化成数组:

(1)直接使用上面打印出来的json字符串

$a = "{"id":1,"age":12,"name":"u5f20u4e09"}";
var_dump(json_decode($a,true));

结论:直接报错:Parse error: syntax error, unexpected 'id' (T_STRING) in ... 

都是用双引号,报错。

(2)使用单引号把json数据引起来

$a = '{"id":1,"age":12,"name":"u5f20u4e09"}';//正确的json数据
var_dump(json_decode($a,true));

结论:正常运行,正常解析。

(3)外层还是用双引号,内层使用斜杠转义:

$a = "{"id":1,"age":12,"name":"u5f20u4e09"}";
var_dump(json_decode($a,true));

结论:正常运行,正常解析。

(4)外层使用双引号,内层使用单引号:

$a = "{'id':1,'age':12,'name':'u5f20u4e09'}";
var_dump(json_decode($a,true));

结果是NULL,也不是正常的json数据。

结论:

1、内层的索引和值必须是双引号;

2、外层是单引号时,内层的双引号不需要转义;

3、外层是双引号时,内层的双引号需要转义。


免责声明:文章转载自《PHP的json_encode()函数的引号》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇异步处理MultipartFile -- No such file or directorypytest中xfail、xpass、skip的简单使用下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

使用podman容器部署飞儿云框架

首先 podman pull php:7.4-apache 删除之前运行的 podman rm -f 8082 然后 podman run -d --name 8082 -p 8082:80-v /home/firadio/firadio-yun-php/:/home/firadio/firadio-yun-php/-v /home/firadio/fir...

PHP $_SERVER 及用户真实IP

$_SERVER 是一个包含了诸如头信息(header)、路径(path)、以及脚本位置(script locations)等等信息的数组。这个数组中的项目由 Web 服务器创建。不能保证每个服务器都提供全部项目;服务器可能会忽略一些,或者提供一些没有在这里列举出来的项目。 下表列出了所有 $_SERVER 变量中的重要元素。 元素/代码 描述 $...

php5.6安装

# yum --enablerepo=remi,remi-php56 install php-fpm php-common php-mysql php-opcache php-pear php-gd php-devel php-mbstring php-mcrypt php-cli php-pdo php-xml -y # yum --enablerepo...

PHP高精度数学运算函数

php 浮点数计算比较及取整不准确。举例:$a = 0.2+0.7;$b = 0.9;var_dump($a == $b); //输出的结果为bool(false)PHP 官方手册说明:显然简单的十进制分数如 0.2 不能在不丢失一点点精度的情况下转换为内部二 进制的格式。printf("%0.20f", $a); //输出的结果为0.899999999...

JQuery 选择器处理特殊字符

在使用JS 选择器的时候,如果含有特殊字符,则选择器选择不了,比如:元素的Id为:QW~~,$("#QW~~"),这样是选择不了的,所以就要对特殊字符进行转义。JS转义函数如下: function escapeJquery(srcString) {// 转义之后的结果var escapseResult = srcString;// javascript正则...

redis 在 php 中的应用(key篇)

本文为我阅读了redis参考手册之后结合博友的博客编写,注意 php_redis 和 redis-cli 的区别(主要是返回值类型和参数用法) 目录: KEY(键) DEL EXISTS EXPIRE EXPIREAT keys MOVE PERSIST TTL RANDOMKEY RENAME RENAMENX TYPE SORT KEY(...