>  기사  >  백엔드 개발  >  json 형식이 올바른지 PHP가 감지하는 사례

json 형식이 올바른지 PHP가 감지하는 사례

黄舟
黄舟원래의
2017-09-21 09:09:401527검색

이 기사에서는 json 형식이 올바른지 확인하기 위해 PHP 구현 코드를 공유합니다. 코드는 간단하고 이해하기 쉽고 매우 훌륭하며 필요한 친구가 참조할 수 있습니다.

더 이상은 필요하지 않습니다. 말도 안되는 소리, 코드를 직접 게시하겠습니다. 자세한 내용은 다음과 같습니다. 코드는 다음과 같습니다.


<?php
$GLOBALS[&#39;count&#39;] = 0;
//校验data或者content的json格式是否有错误
function data($value) {
  if (isset($value[&#39;data&#39;])) {
    $value[&#39;data&#39;] = json_decode($value[&#39;data&#39;], true);
  } else if (isset($value[&#39;content&#39;])) {
    $value[&#39;content&#39;] = json_decode($value[&#39;content&#39;], true);
  } else {
    die(&#39;必须要有content或者data字段&#39;);
  }
  $error = json_last_error();
  if (!empty($error)) {
    echo "<pre class="brush:php;toolbar:false">";
    print_r($value);
    echo "
"; } return $value; } //校验静态资源是否存在; function my_filter($value) { $needle = ['.jpg', '.jpeg', '.png', '.avi', '.mp4', '.wav', '.gif', '.mp3']; $root = 'D:/phpStudy/WWW/levelData/'; foreach ($needle as $k => $v) { $aa = strpos($value, $v); if ($aa) { $file = $root . $value; if (!file_exists($file)) { $GLOBALS['count']++; return $value; } } } } //获取多维数组里面某一列的下标,并重新组成一维数组 function searchMultiArray(array $array, $search, $mode = 'key') { $res = array(); foreach (new RecursiveIteratorIterator(new RecursiveArrayIterator($array)) as $key => $value) { if ($search === ${${"mode"}}) { if ($mode == 'key') { $res[] = $value; } else { $res[] = $key; } } } return $res; } function my_filter_answer($value) { $needle = [',', '、', ' ', '.', ',,', ',,']; foreach ($needle as $k => $v) { $aa = strpos($value, $v); if ($aa) { return 1; } } } //将汉字,特殊字符原样变成json数据 function ch_json_encode($data) { $ret = ch_urlencode($data); $ret = json_encode($ret); return '\'' . addslashes(urldecode($ret)) . '\''; } //汉字,特殊字符变可读懂的字符串主程序 function ch_urlencode($data) { if (is_array($data) || is_object($data)) { foreach ($data as $k => $v) { if (is_scalar($v)) { if (is_array($data)) { $data[$k] = urlencode($v); } else if (is_object($data)) { $data->$k = urlencode($v); } } else if (is_array($data)) { $data[$k] = ch_urlencode($v); // 递归调用该函数 } else if (is_object($data)) { $data->$k = ch_urlencode($v); } } } return $data; }

요약

위 내용은 json 형식이 올바른지 PHP가 감지하는 사례의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.