当前位置: 首页 > news >正文

通用的方法,来检查字段是否存在

 1 class AlarmController
 2 {    
 3     const VALID = 1;  //有效
 4     const INVALID = 0;  //无效
 5     
 6      /**
 7      * @param array $data
 8      * @return bool
 9      */
10     public function doCheckShareholderApproval( array $data )
11     {
12         $fields = array( 'initiator', 'role', 'uid' );
13         $check = $this->verifyInputParams( $data, $fields );
14 
15         if ( $check['status'] == self::INVALID ) {
16             $this->error = array(
17                 'errorCode' => 0,
18                 'errorMsg' => $check['msg']
19             );
20             return false;
21         }
22     }
23     
24     /**
25      * Check whether the field exists, there is a return value, there is no return error information
26      * 检查字段是否存在,存在返回数值,不存在返回错误信息
27      * @param $data
28      * @param $fields
29      * @return array
30      */
31     function verifyInputParams($data, $fields) {
32         $error = array('status' => 1);
33         $param = array();
34         foreach ($fields as $key => $val) {
35             if (!isset($data[$val])) {
36                 $error['status'] = 0;
37                 $error['msg'] = 'Illegal operation not find ' . $val . ' field';
38                 return $error;
39             }
40 
41             $param[$key] = $data[$val];
42         }
43 
44         $error['data'] = $param;
45         return $error;
46     }
47 }

 

转载于:https://www.cnblogs.com/spectrelb/p/6803659.html

相关文章:

  • 面试题之求二叉树的深度
  • android笔记5——同一个Activity中Fragment的切换
  • 使用vmimeNET解析账单邮件
  • 关于浏览器端的网页性能测试
  • Qt入门之基础篇 ( 一 ) :Qt4及Qt5的下载与安装
  • 倍福TwinCAT(贝福Beckhoff)常见问题(FAQ)-如何使用断点
  • SQLServer2005数据库日志文件损坏的情况下如何恢复数据库
  • centos7下yum快速安装 mariadb(mysql)
  • 精讲sql server数据库sysObjects表中xtype字段值的含义
  • 第一个冲刺周期第六天
  • 日志分析 操作
  • Maven中的-D(Properties属性)和-P(Profiles配置文件)
  • 用sql语句dbcc log 查看SQL Server 数据库的事务日志
  • 多线程学习(十二)
  • 用c#读取并分析sql2005日志
  • $translatePartialLoader加载失败及解决方式
  • [nginx文档翻译系列] 控制nginx
  • 【159天】尚学堂高琪Java300集视频精华笔记(128)
  • 【刷算法】从上往下打印二叉树
  • Asm.js的简单介绍
  • linux安装openssl、swoole等扩展的具体步骤
  • MySQL几个简单SQL的优化
  • PHP 程序员也能做的 Java 开发 30分钟使用 netty 轻松打造一个高性能 websocket 服务...
  • 给初学者:JavaScript 中数组操作注意点
  • 前端每日实战 2018 年 7 月份项目汇总(共 29 个项目)
  • 悄悄地说一个bug
  • 人脸识别最新开发经验demo
  • 使用Swoole加速Laravel(正式环境中)
  • 适配iPhoneX、iPhoneXs、iPhoneXs Max、iPhoneXr 屏幕尺寸及安全区域
  • 异步
  • 深度学习之轻量级神经网络在TWS蓝牙音频处理器上的部署
  • 3月7日云栖精选夜读 | RSA 2019安全大会:企业资产管理成行业新风向标,云上安全占绝对优势 ...
  • 摩拜创始人胡玮炜也彻底离开了,共享单车行业还有未来吗? ...
  • #NOIP 2014#day.2 T1 无限网络发射器选址
  • (C语言)二分查找 超详细
  • (poj1.3.2)1791(构造法模拟)
  • (附源码)springboot 个人网页的网站 毕业设计031623
  • (附源码)springboot青少年公共卫生教育平台 毕业设计 643214
  • (简单有案例)前端实现主题切换、动态换肤的两种简单方式
  • (三)centos7案例实战—vmware虚拟机硬盘挂载与卸载
  • (四)linux文件内容查看
  • (转)linux下的时间函数使用
  • (转)linux自定义开机启动服务和chkconfig使用方法
  • (转)shell中括号的特殊用法 linux if多条件判断
  • (转)关于pipe()的详细解析
  • (转载)虚幻引擎3--【UnrealScript教程】章节一:20.location和rotation
  • *(长期更新)软考网络工程师学习笔记——Section 22 无线局域网
  • ... fatal error LINK1120:1个无法解析的外部命令 的解决办法
  • .【机器学习】隐马尔可夫模型(Hidden Markov Model,HMM)
  • .NET Core 2.1路线图
  • .net core Swagger 过滤部分Api
  • .Net Core 中间件验签
  • .NET/C# 异常处理:写一个空的 try 块代码,而把重要代码写到 finally 中(Constrained Execution Regions)
  • .NET企业级应用架构设计系列之应用服务器
  • ??javascript里的变量问题