Home >php教程 >php手册 >php的json_decode函数返回null的问题

php的json_decode函数返回null的问题

WBOY
WBOYOriginal
2016-06-02 09:14:031932browse

php5.2以后自带json_decode函数,但是对json文本串的格式要求非常严格,如果我们稍有一点不注意很可能使用该函数得到的返回值是NULL了,今天我就碰到此问题下面一起来看看.

可以使用使用json_last_error()函数获取到的返回值来帮助我们判断出问题的原因,其中如果提示错误JSON_ERROR_SYNTAX(Syntax error),表示json串格式错误.

可以通过以下几个方式排错:

1. json字符串必须以双引号包含,代码如下:

$output = str_replace("'", '"', $output);

2. json字符串必须是utf8编码,代码如下:

$output = iconv('gbk', 'utf8', $output);

3.不能有多余的逗号,如:[1,2,]

用正则替换掉,preg_replace('/,s*([]}])/m', '$1', $output)


教程网址:

欢迎收藏∩_∩但请保留本文链接。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn