Home >php教程 >php手册 >php判断是否为json格式的方法

php判断是否为json格式的方法

WBOY
WBOYOriginal
2016-06-06 20:24:221741browse

这篇文章主要介绍了php判断是否为json格式的方法,需要的朋友可以参考下

首先要记住json_encode返回的是字符串, 而json_decode返回的是对象

判断数据不是JSON格式:

复制代码 代码如下:


function is_not_json($str){ 
    return is_null(json_decode($str));
}

判断数据是合法的json数据: (PHP版本大于5.3)

复制代码 代码如下:


function is_json($string) {
 json_decode($string);
 return (json_last_error() == JSON_ERROR_NONE);
}

json_last_error()函数返回数据编解码过程中发生的错误

注意: json编解码所操作字符串必须是UTF8的

例子

复制代码 代码如下:


/**
* 解析json串
* @param type $json_str
* @return type
*/
function analyJson($json_str) {
$json_str = str_replace('\\', '', $json_str);
$out_arr = array();
preg_match('/{.*}/', $json_str, $out_arr);
if (!empty($out_arr)) {
$result = json_decode($out_arr[0], TRUE);
} else {
return FALSE;
}
return $result;
}


如果不是json则返回false ,
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