今天用json_decode解析微信返回过来的数据,获取到的数据是完整的json字符串,但是用json_decode解析之后,返回值是NULL,网上的答案大多如下:
json_decode要求的字符串比较严格: 1. 使用UTF-8编码 2. 不能在最后元素有逗号 3. 不能使用单引号 4. 不能有/r,/t,如果有请替换
问题并没有解决,于是就先把字符串进行如下替换,再用json_decode进行解析,完美解决。 原因:含有除以上4点以为的其他破坏json字符串的字符。
$result = PReg_replace('/[/x00-/x1F/x80-/x9F]/u', '', trim($result));新闻热点
疑难解答