PHP 判断字符串是否为 Json 格式

转自:

https://blog.csdn.net/maxsky/article/details/80542839

网上一堆人说的 json_last_error(),可以判断 json_decode 后的结果

我也没多想,试了一下:

json_decode('123');
var_dump(json_last_error());
1
2
然后可笑的去 json_last_error() === JSON_ERROR_NONE,返回的是 true 吧?

那还怎么比较…

写了一个大家可参考:

/**
* 判断字符串是否为 Json 格式
* 
* @param string $data Json 字符串
* @param bool $assoc 是否返回关联数组。默认返回对象
* 
* @return array|bool|object 成功返回转换后的对象或数组,失败返回 false
*/
function isJson($data = '', $assoc = false) {
  $data = json_decode($data, $assoc);
  if (($data && is_object($data)) || (is_array($data) && !empty($data))) {
    return $data;
  }
  return false;
}

 



posted on 2019-08-15 13:35  ziyi_ang  阅读(4590)  评论(0编辑  收藏  举报

导航