PHP Json解码器返回NULL,如果它包含&或é或特殊字符

时间:2010-12-05 19:49:53

标签: php json

我想知道如何逃避这些特殊字符的php内置json解码器来理解,这些字符是什么?

示例:json_decode('{"text":"test & test"}',true);

返回NULL

我尝试使用\来逃避它但它不起作用(仅适用于引号)。

任何解决方案?

1 个答案:

答案 0 :(得分:0)

它应该与使用普通和&它对我有用......但是我过去遇到了一些问题,因为没有识别某些特殊字符的叮咬,在这种情况下的解决方案是确保php文件文件编码设置为utf8。我过去遇到的另一个问题是XMLReader女巫不接受简单的简单&但是&可以正常工作,所以你可以尝试以下方法:

json_decode(preg_replace('/&/','&','{"text":"test & test"}'));

P.S。我想你正在尝试解码一个更大的json字符串,所以问题可能来自字符串的不同部分,你是否运行了你在问题中发布的确切测试并返回null?