php - 无法在php中解码JSON字符串

标签 php json

我有以下 JSON 字符串,我尝试用 php json_decode 解码,但是 $postarray 始终为 NULL,无法弄清楚这是为什么?

在 Debian 5.0 Linux 上运行 php 客户端 API 版本 => 5.0.51a JSON版本1.2.1

 $json = '{\"json\":[{\"username\":\"1062576\",\"accountId\":\"45656565\"}]}';

 $postarray = json_decode($json);
 print_r($postarray);

谢谢

最佳答案

在字符串中转义双引号 (\") 的原因是,如果字符串是双引号。

因为你要转义双引号,你应该用双引号(而不是单引号)引用你的字符串,像这样:

<?php
 $json = "{\"json\":[{\"username\":\"1062576\",\"accountId\":\"45656565\"}]}";

 $postarray = json_decode($json);
 print_r($postarray);
?>

Live Example

如果您确实想对字符串进行单引号,则使用 don't escape the double quotes ,或者像 Andrei 建议的那样使用 stripslashes()

您可以阅读有关 the four ways to specify a string in PHP, and the differences among them, here 的信息。

关于php - 无法在php中解码JSON字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3586401/

相关文章:

javascript - 使用新的 aaData 值重新加载数据表

php 将 JSON 数组键转换为整数

php - Backbone.js:奇怪的 .save() 错误回调

javascript - Yii框架: Save uploaded file

php - Angular JS : Inserting Row into MySQL Database by JSON doesnt work

android - 从 Kotlin android 中的 json 字符串中删除换行符\n

c# - 是否可以或有必要设置ServiceStack客户端删除请求的内容类型?

php - yii2:一对多关系的索引页(带搜索),显示所有字段

php - Google Analytics OAuth2 刷新 token 限制

java - 多JSONarray问题