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


Posted in PHP onSeptember 20, 2017

废话不多说了,直接给大家贴代码了,具体代码如下所示:

<?php
$GLOBALS['count'] = 0;
//校验data或者content的json格式是否有错误
function data($value) {
  if (isset($value['data'])) {
    $value['data'] = json_decode($value['data'], true);
  } else if (isset($value['content'])) {
    $value['content'] = json_decode($value['content'], true);
  } else {
    die('必须要有content或者data字段');
  }
  $error = json_last_error();
  if (!empty($error)) {
    echo "<pre>";
    print_r($value);
    echo "</pre>";
  }
  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;
}

总结

以上所述是小编给大家介绍的PHP判断json格式是否正确的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
非常好的php目录导航文件代码
Oct 09 PHP
php中截取字符串支持utf-8
Jan 18 PHP
php的array_multisort()使用方法介绍
May 16 PHP
PHP下使用CURL方式POST数据至API接口的代码
Feb 14 PHP
Linux中用PHP判断程序运行状态的2个方法
May 04 PHP
php上传图片之时间戳命名(保存路径)
Aug 15 PHP
thinkphp利用模型通用数据编辑添加和删除的实例代码
Nov 20 PHP
PHP实现模拟http请求的方法分析
Dec 20 PHP
Docker搭建自己的PHP开发环境
Feb 24 PHP
浅谈php的TS和NTS的区别
Mar 13 PHP
php中文语义分析实现方法示例
Sep 28 PHP
php设计模式之原型模式分析【星际争霸游戏案例】
Mar 23 PHP
Yii2.0使用阿里云OSS的SDK上传图片、下载、删除图片示例
Sep 20 #PHP
PHP文件管理之实现网盘及压缩包的功能操作
Sep 20 #PHP
弹出模态框modal的实现方法及实例
Sep 19 #PHP
PHP 进度条函数的简单实例
Sep 19 #PHP
yii2.0整合阿里云oss删除单个文件的方法
Sep 19 #PHP
yii2.0整合阿里云oss上传单个文件的示例
Sep 19 #PHP
yii2.0整合阿里云oss的示例代码
Sep 19 #PHP
You might like
php 计算两个时间戳相隔的时间的函数(小时)
2009/12/18 PHP
深入掌握include_once与require_once的区别
2013/06/17 PHP
javascript笔试题目附答案@20081025_jb51.net
2008/10/26 Javascript
Javascript Global对象
2009/08/13 Javascript
js获取url参数值的两种方式
2013/09/10 Javascript
jquery和ajax的关系详细介绍
2013/11/29 Javascript
js中top的作用深入剖析
2014/03/04 Javascript
Javascript 运动中Offset的bug解决方案
2014/12/24 Javascript
AngularJs Javascript MVC 框架
2016/06/20 Javascript
jQuery使用serialize()表单序列化时出现中文乱码问题的解决办法
2016/07/27 Javascript
JS实现动画兼容性的transition和transform实例分析
2016/12/13 Javascript
图片懒加载插件实例分享(含解析)
2017/01/09 Javascript
动态加载css方法实现和深入解析
2017/01/18 Javascript
jQuery实现可编辑表格并生成json结果(实例代码)
2017/07/19 jQuery
js动态引入的四种方法
2018/05/05 Javascript
Vue微信项目按需授权登录策略实践思路详解
2018/05/07 Javascript
layDate日期控件使用方法详解
2018/11/15 Javascript
JS实现的Object数组去重功能示例【数组成员为Object对象】
2019/02/01 Javascript
Vue自定义指令上报Google Analytics事件统计的方法
2019/02/25 Javascript
Vue项目中使用WebUploader实现文件上传的方法
2019/07/21 Javascript
python远程登录代码
2008/04/29 Python
Django框架实现的普通登录案例【使用POST方法】
2019/05/15 Python
Python hashlib加密模块常用方法解析
2019/12/18 Python
python有序查找算法 二分法实例解析
2020/02/18 Python
Python闭包装饰器使用方法汇总
2020/06/29 Python
利用Python中的Xpath实现一个在线汇率转换器
2020/09/09 Python
欧洲顶级体育电子商务网站:SportsShoes.com
2018/03/27 全球购物
运输服务质量承诺书
2014/03/27 职场文书
设备收款委托书范本
2014/10/02 职场文书
井冈山红色之旅感想
2014/10/07 职场文书
第二批党的群众路线教育实践活动总结报告
2014/10/30 职场文书
2014年营业员工作总结
2014/11/18 职场文书
工作失职自我检讨书
2015/05/05 职场文书
2015年党员个人工作总结
2015/05/13 职场文书
公司处罚决定书
2015/06/24 职场文书
python使用tkinter实现透明窗体上绘制随机出现的小球(实例代码)
2021/05/17 Python