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 相关文章推荐
怎样在UNIX系统下安装MySQL
Oct 09 PHP
PHP 模拟登陆MSN并获得用户信息
May 16 PHP
简单的PHP留言本实例代码
May 09 PHP
php将会员数据导入到ucenter的代码
Jul 18 PHP
深入解析PHP中的(伪)多线程与多进程
Jul 01 PHP
php缓存技术详细总结
Aug 07 PHP
ThinkPHP3.1的Widget新用法
Jun 19 PHP
php常用字符串比较函数实例汇总
Nov 24 PHP
PHP在innodb引擎下快速代建全文搜索功能简明教程【基于xunsearch】
Oct 14 PHP
PHP时间函数使用详解
Mar 21 PHP
通过PHP的Wrapper无缝迁移原有项目到新服务的实现方法
Apr 02 PHP
PHP如何使用cURL实现Get和Post请求
Jul 11 PHP
Yii2.0使用阿里云OSS的SDK上传图片、下载、删除图片示例
Sep 20 #PHP
PHP文件管理之实现网盘及压缩包的功能操作
Sep 20 #PHP
PHP使用Nginx实现反向代理
Sep 20 #PHP
弹出模态框modal的实现方法及实例
Sep 19 #PHP
PHP 进度条函数的简单实例
Sep 19 #PHP
yii2.0整合阿里云oss删除单个文件的方法
Sep 19 #PHP
yii2.0整合阿里云oss上传单个文件的示例
Sep 19 #PHP
You might like
用PHP调用Oracle存储过程的方法
2008/09/12 PHP
CI(Codeigniter)的Setting增强配置类实例
2016/01/06 PHP
PHP Echo字符串的连接格式
2016/03/07 PHP
JS中confirm,alert,prompt函数使用区别分析
2010/04/01 Javascript
中文字符串截取的js函数代码
2013/04/17 Javascript
基于pthread_create,readlink,getpid等函数的学习与总结
2013/07/17 Javascript
Node.js中创建和管理外部进程详解
2014/08/16 Javascript
javascript抽象工厂模式详细说明
2014/12/16 Javascript
jquery可定制的在线UEditor编辑器
2015/11/17 Javascript
JavaScript实现Java中Map容器的方法
2016/10/09 Javascript
在React中如何优雅的处理事件响应详解
2017/07/24 Javascript
Bootstrap Table 在指定列中添加下拉框控件并获取所选值
2017/07/31 Javascript
mpvue将vue项目转换为小程序
2018/09/30 Javascript
Vue.js 中的 v-cloak 指令及使用详解
2018/11/19 Javascript
React 实现拖拽功能的示例代码
2019/01/06 Javascript
使用Vue.js中的过滤器实现幂方求值的方法
2019/08/27 Javascript
在layui框架中select下拉框监听更改事件的例子
2019/09/20 Javascript
Vuex模块化应用实践示例
2020/02/03 Javascript
Angular+ionic实现折叠展开效果的示例代码
2020/07/29 Javascript
[44:40]Serenity vs Pain 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
每天迁移MySQL历史数据到历史库Python脚本
2018/04/13 Python
Pycharm2017版本设置启动时默认自动打开项目的方法
2018/10/29 Python
在Pycharm中执行scrapy命令的方法
2019/01/16 Python
python3+PyQt5 数据库编程--增删改实例
2019/06/17 Python
Python正则表达式如何匹配中文
2020/05/27 Python
Keras SGD 随机梯度下降优化器参数设置方式
2020/06/19 Python
django 实现后台从富文本提取纯文本
2020/07/02 Python
PyTorch如何搭建一个简单的网络
2020/08/24 Python
Python3使用 GitLab API 进行批量合并分支
2020/10/15 Python
基于python模拟TCP3次握手连接及发送数据
2020/11/06 Python
html5拍照功能实现代码(htm5上传文件)
2013/12/11 HTML / CSS
《猴子种树》教学反思
2014/02/14 职场文书
2014年庆祝国庆65周年演讲稿
2014/09/21 职场文书
五年级学生评语大全
2014/12/26 职场文书
Python基础之变量的相关知识总结
2021/06/23 Python
Apache Hudi 加速传统的批处理模式
2022/04/24 Servers