当前位置:首页 > PHP教程 > php文件操作 > 列表

PHP判断json格式是否正确的实现代码

发布:smiling 来源: PHP粉丝网  添加日期:2021-08-07 21:32:54 浏览: 评论:0 

本文给大家分享PHP判断json格式是否正确的实现代码,代码简单易懂,非常不错,具有参考借鉴价值,需要的朋友参考下吧,废话不多说了,直接给大家贴代码了,具体代码如下所示:

  1. <?php 
  2. $GLOBALS['count'] = 0; 
  3. //校验data或者content的json格式是否有错误 
  4. function data($value) { 
  5.   if (isset($value['data'])) { 
  6.     $value['data'] = json_decode($value['data'], true); 
  7.   } else if (isset($value['content'])) { 
  8.     $value['content'] = json_decode($value['content'], true); 
  9.   } else { 
  10.     die('必须要有content或者data字段'); 
  11.   } 
  12.   $error = json_last_error(); 
  13.   if (!emptyempty($error)) { 
  14.     echo "<pre>"; 
  15.     print_r($value); 
  16.     echo "</pre>"; 
  17.   } 
  18.   return $value; 
  19. } 
  20. //校验静态资源是否存在; 
  21. function my_filter($value) { 
  22.   $needle = ['.jpg', '.jpeg', '.png', '.avi', '.mp4', '.wav', '.gif', '.mp3']; 
  23.   $root = 'D:/phpStudy/WWW/levelData/'; 
  24.   foreach ($needle as $k => $v) { 
  25.     $aa = strpos($value, $v); 
  26.     if ($aa) { 
  27.       $file = $root . $value; 
  28.       if (!file_exists($file)) { 
  29.         $GLOBALS['count']++; 
  30.         return $value; 
  31.       } 
  32.     } 
  33.   } 
  34. } 
  35. //获取多维数组里面某一列的下标,并重新组成一维数组 
  36. function searchMultiArray(array $array, $search, $mode = 'key') { 
  37.   $res = array(); 
  38.   foreach (new RecursiveIteratorIterator(new RecursiveArrayIterator($array)) as $key => $value) { 
  39.     if ($search === ${${"mode"}}) { 
  40.       if ($mode == 'key') { 
  41.         $res[] = $value; 
  42.       } else { 
  43.         $res[] = $key; 
  44.       } 
  45.     } 
  46.   } 
  47.   return $res; 
  48. } 
  49. function my_filter_answer($value) { 
  50.   $needle = [',', '、', ' ', '.', ',,', ',,']; 
  51.   foreach ($needle as $k => $v) { 
  52.     $aa = strpos($value, $v); 
  53.     if ($aa) { 
  54.       return 1; 
  55.     } 
  56.   } 
  57. } 
  58. //将汉字,特殊字符原样变成json数据 
  59. function ch_json_encode($data) { 
  60.   $ret = ch_urlencode($data); 
  61.   $ret = json_encode($ret); 
  62.   return '\'' . addslashes(urldecode($ret)) . '\''; 
  63. } 
  64. //汉字,特殊字符变可读懂的字符串主程序 
  65. function ch_urlencode($data) { 
  66.   if (is_array($data) || is_object($data)) { 
  67.     foreach ($data as $k => $v) { 
  68.       if (is_scalar($v)) { 
  69.         if (is_array($data)) { 
  70.           $data[$k] = urlencode($v); 
  71.         } else if (is_object($data)) { 
  72.           $data->$k = urlencode($v); 
  73.         } 
  74.       } else if (is_array($data)) { 
  75.         $data[$k] = ch_urlencode($v); // 递归调用该函数 
  76.       } else if (is_object($data)) { 
  77.         $data->$k = ch_urlencode($v); 
  78.       } 
  79.     } 
  80.   } 
  81.   return $data; 
  82. }

Tags: PHP判断json格式

分享到: