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 相关文章推荐
来自phpguru得Php Cache类源码
Apr 15 PHP
php数据库连接时容易出错的特殊符号问题
Sep 01 PHP
解决File size limit exceeded 错误的方法
Jun 14 PHP
PHP提交表单失败后如何保留已经填写的信息
Jun 20 PHP
MacOS 安装 PHP的图片裁剪扩展Tclip
Mar 25 PHP
php实现的mongodb操作类实例
Apr 03 PHP
PHP实现的迷你漂流瓶
Jul 29 PHP
php版微信开发Token验证失败或请求URL超时问题的解决方法
Sep 23 PHP
Yii2.0中使用js异步删除示例
Mar 10 PHP
php实现微信公众平台发红包功能
Jun 14 PHP
php和html的区别点详细总结
Sep 24 PHP
Memcached介绍及php-memcache扩展安装
Apr 01 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中new static()与new self()的区别异同分析
2014/08/22 PHP
ThinkPHP框架设计及扩展详解
2014/11/25 PHP
PHP中substr函数字符串截取用法分析
2016/01/07 PHP
ThinkPHP5框架缓存查询操作分析
2018/05/30 PHP
对new functionName()定义一个函数的理解
2014/05/22 Javascript
jQuery 监控键盘一段时间没输入
2016/04/22 Javascript
jQuery特殊符号转义的实现
2016/11/30 Javascript
bootstrap 日期控件 datepicker被弹出框dialog覆盖的解决办法
2019/07/09 Javascript
vue+elementUI动态生成面包屑导航教程
2019/11/04 Javascript
JavaScript基于面向对象实现的无缝滚动轮播示例
2020/01/17 Javascript
支付宝小程序实现省市区三级联动
2020/06/21 Javascript
python读取Android permission文件
2013/11/01 Python
使用python分析git log日志示例
2014/02/27 Python
Python greenlet实现原理和使用示例
2014/09/24 Python
简单介绍Python中的round()方法
2015/05/15 Python
python利用urllib和urllib2访问http的GET/POST详解
2017/09/27 Python
python做量化投资系列之比特币初始配置
2018/01/23 Python
python如何重载模块实例解析
2018/01/25 Python
python绘制热力图heatmap
2020/03/23 Python
解决新django中的path不能使用正则表达式的问题
2018/12/18 Python
Python 堆叠柱状图绘制方法
2019/07/29 Python
python图形开发GUI库pyqt5的基本使用方法详解
2020/02/14 Python
Python3以GitHub为例来实现模拟登录和爬取的实例讲解
2020/07/30 Python
CSS3实现背景透明文字不透明的示例代码
2018/06/25 HTML / CSS
Html5之svg可缩放矢量图形_动力节点Java学院整理
2017/07/17 HTML / CSS
HTML5的Video标签有部分MP4无法播放的问题解析(多图)
2017/08/18 HTML / CSS
新闻编辑自荐信
2013/11/03 职场文书
机电职业生涯规划书范文
2014/03/08 职场文书
《地震中的父与子》教学反思
2014/04/10 职场文书
关键在于落实心得体会
2014/09/03 职场文书
2014年大学生职业规划书:未来不是梦,只要勇敢冲!
2014/09/22 职场文书
党员作风建设整改方案
2014/10/27 职场文书
JavaScript数组reduce()方法的语法与实例解析
2021/07/07 Javascript
AJAX实现省市县三级联动效果
2021/10/16 Javascript
正则表达式拆分url实例代码
2022/02/24 Java/Android
SpringBoot接入钉钉自定义机器人预警通知
2022/07/15 Java/Android