json_encode PHP的结果为空? [重复](json_encode php resul

2019-09-28 20:02发布

可能重复:
json_encode是返回NULL?

我有一个奇怪的问题json_encode()在PHP。 很简单的代码:

$content = json_encode(array('content1' => $arm_length,
                             'content2' => $body_length));
echo $content;

$arm_length$body_length变量包含了两个选择下拉菜单中的HTML标记。 我的问题是,当echo的出它展示的NULLcontent1content2 。 如果我参加了json_encode()路程,只是做print_r($content)它显示所有的数据,因为它应该是。

有谁知道这里发生了什么? 是否有不能被解析成JSON的某些数据? 我这个工作现在使用Ajax / PHP几次,从未发生过任何问题。

干杯的任何帮助。

Answer 1:

json_encode()具有静默的(无证)习惯null ING属性包含无效(=非UTF-8)个字符。

请确保您输入的数据是UTF-8编码,这该函数的记录的需求。

在故障编码,的事件json_last_error()可以被用来确定错误的确切性质。 (可在PHP 5.3只)

相关阅读: 如何保持json_encode()从无效字符的字符串下降



Answer 2:

您瓦尔引号内“应该逃脱这样的:\”你可以做到这一点add_slashes($ arm_length)

此外JSON抛出的\ n(新行)和一些其他字符的错误,你可以在这里找到完整列表- http://json.org/



文章来源: json_encode php result is NULL? [duplicate]
标签: php ajax null json