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 相关文章推荐
在数据量大(超过10万)的情况下
Jan 15 PHP
使用PHP获取网络文件的实现代码
Jan 01 PHP
解析在apache里面给php写虚拟目录的详细方法
Jun 24 PHP
php通过session防url攻击方法
Dec 10 PHP
php显示指定目录下子目录的方法
Mar 20 PHP
php实现求相对时间函数
Jun 15 PHP
教你在PHPStorm中配置Xdebug
Jul 27 PHP
PHP下的浮点运算不准的解决方法
Oct 27 PHP
PHP实现权限管理功能示例
Sep 22 PHP
CI框架(CodeIgniter)实现的数据库增删改查操作总结
May 23 PHP
PHP示例演示发送邮件给某个邮箱
Apr 03 PHP
PhpStorm连接服务器并实现自动上传功能
Dec 09 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原理的opcodes(操作码)
2010/10/26 PHP
laravel5.6框架操作数据curd写法(查询构建器)实例分析
2020/01/26 PHP
通过jquery还原含有rowspan、colspan的table的实现方法
2012/02/10 Javascript
js三种排序算法分享
2012/08/16 Javascript
如何解决Jquery库及其他库之间的$命名冲突
2013/09/15 Javascript
JS数组去重与取重的示例代码
2014/01/24 Javascript
如何调试异步加载页面里包含的js文件
2014/10/30 Javascript
使用js获取图片原始尺寸
2014/12/03 Javascript
js 动态添加元素(div、li、img等)及设置属性的方法
2016/07/19 Javascript
Node.js + Redis Sorted Set实现任务队列
2016/09/19 Javascript
vue.js中$watch的用法示例
2016/10/04 Javascript
jQuery实现导航样式布局操作示例【可自定义样式布局】
2018/07/24 jQuery
mpvue开发音频类小程序踩坑和建议详解
2019/03/12 Javascript
vue实现路由切换改变title功能
2019/05/28 Javascript
vue基本使用--refs获取组件或元素的实例
2019/11/07 Javascript
[08:06]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Elephant 选手采访
2021/03/11 DOTA
python的文件操作方法汇总
2017/11/10 Python
Python实现多条件筛选目标数据功能【测试可用】
2018/06/13 Python
PYQT5设置textEdit自动滚屏的方法
2019/06/14 Python
python画图把时间作为横坐标的方法
2019/07/07 Python
Pycharm中出现ImportError:DLL load failed:找不到指定模块的解决方法
2019/09/17 Python
Python实现投影法分割图像示例(一)
2020/01/17 Python
使用Python制作新型冠状病毒实时疫情图
2020/01/28 Python
django 扩展user用户字段inlines方式
2020/03/30 Python
selenium切换标签页解决get超时问题的完整代码
2020/08/30 Python
css3中flex布局宽度不生效的解决
2020/12/09 HTML / CSS
html5 touch事件实现触屏页面上下滑动(一)
2016/03/10 HTML / CSS
AJax面试题
2014/11/25 面试题
致跳高运动员广播稿
2014/01/13 职场文书
秋季开学典礼主持词
2014/03/19 职场文书
双拥工作宣传标语
2014/06/26 职场文书
临时租车协议范本
2014/09/23 职场文书
交通事故协议书范本
2014/11/18 职场文书
班主任自我评价范文
2015/03/11 职场文书
2015年全国保险公众宣传日活动方案
2015/05/06 职场文书
幼儿园门卫安全责任书
2015/05/08 职场文书