in_array()的那些坑
业务需求,根据传来的status获取对应的数据
认证状态:0 待审核,1 审核通过,2 不通过
看一下这组代码
echo in_array('', array(0)) ? 1 : 0; // 结果:1
echo in_array(null, array(0)) ? 1 : 0; // 结果:1
echo in_array(false, array(0)) ? 1 : 0; // 结果:1
这么大一个坑,我们要怎么绕过或者填起呢?
方法一:in_array支持第三个参数,强制对数据类型检测
echo in_array('', array(0), true) ? 1 : 0; // 结果:0
echo in_array(null, array(0), true) ? 1 : 0; // 结果:0
echo in_array(false, array(0), true) ? 1 : 0; // 结果:0
方法二:依然是数据类型方向,把数组中的0改为字符串
echo in_array('', array('0'), true) ? 1 : 0; // 结果:0
echo in_array(null, array('0'), true) ? 1 : 0; // 结果:0
echo in_array(false, array('0'), true) ? 1 : 0; // 结果:0
in_array()的那些坑相关推荐
- [php] in_array 判断问题(坑)
<?php $arr = array("Linux"); if (in_array(0, $arr)) {echo "match"; } ?> 执行 ...
- 【golang程序包推荐分享】分享亿点点golang json操作及myJsonMarshal程序包开发的踩坑经历 :)
目录[阅读时间:约5分钟] 一.概述 1.Json的作用 2.Go官方 encoding/json 包 3. golang json的主要操作 二.Json Marshal:将数据编码成json字符串 ...
- java调用clang编译的so_写Java这么久,JDK源码编译过没?编译JDK源码踩坑纪实
好奇害死羊 很多小伙伴们做Java开发,天天写Java代码,肯定离不开Java基础环境:JDK,毕竟我们写好的Java代码也是跑在JVM虚拟机上. 一般来说,我们学Java之前,第一步就是安装JDK环 ...
- flask sqlalchemy踩坑记录
查询 坑1: 查询不存在返回值不全是None 当使用first().one()等函数进行查询时,如果查询不存在,返回值为None 但是如果使用all().paginate()等函数进行查询是,如果返回 ...
- mac git使用与配置踩过的坑
#mac git使用与配置踩过的坑 标题mac配置git ssh密钥 参考链接mac配置git ssh key go get安装失败的解决方法 go get约等于git clone+go instal ...
- 你需要掌握的有关.NET DateTime类型的知识点和坑位 都在这里
引言 DateTime数据类型是一个复杂的问题,复杂到足以让你在编写[将日期从Web服务器返回到浏览器]简单代码时感到困惑. ASP.NET MVC 5和 Web API 2/ASP.NETCo ...
- (转)面试必备技能:JDK动态代理给Spring事务埋下的坑!
一.场景分析 最近做项目遇到了一个很奇怪的问题,大致的业务场景是这样的:我们首先设定两个事务,事务parent和事务child,在Controller里边同时调用这两个方法,示例代码如下: 1.场景A ...
- java.lang.OutOfMemoryError:GC overhead limit exceeded填坑心得
该文章出自:http://www.cnblogs.com/hucn/p/3572384.html 分析工具:http://www.blogjava.net/jjshcc/archive/2014/03 ...
- Python 常见的坑汇总
1. 列表与 * 操作 Python 中,* 操作符与 list 结合使用,实现元素复制. 复制 5 个空列表: In [1]: [[]] * 5 Out[1]: [[], [], [], [], [ ...
最新文章
- OKR的落实过程中如何判断设定的OKR是否是合格的OKR?
- 转载:Ajax及 GET、POST 区别
- Java设计模式(七大原则和单例模式篇)
- 千万级到10亿+的疯涨,搜狗商业平台服务化体系实践之路
- 如何听节拍器_我是如何开垮一家琴行的!
- java 之持久化和序列化(反序列化)
- 详解Framework
- 读书笔记_探索式测试_混合探索式测试
- 【写作】Texlive和Texmaker学习
- java里面如何加入高级的东西_如何成为一名Java高级架构师
- 计算机科学与技术大学教程,21世纪高等学校计算机科学与技术规划教材:大学计算机基础教程...
- php openssl 处理pkcs8,openssl生成RSA格式,并转为pkcs8格式
- python-docx库读写word文档
- 【第四课】UAV倾斜摄影测量三维建模技术软件——Smart 3d
- 计算机无法添加打印机,电脑无法添加网络打印机,怎么办?
- EZ 2018 03 16 NOIP2018 模拟赛(四)
- 光耦w314的各引脚图_P621 光耦
- 利用Python查找出Android项目中未使用的string
- 卖计算机配件的二手平台,电脑哪些配件适合买二手,哪些最好入新?
- 进程子进程 线程子线程结束问题