PHP如何优雅的从url中获得一个boolean值
2016-01-08 14:56
309 查看
1. 传true和false
http://www/index.php?flag=false此时,flag的值是false,但会被认为是字符串,所以其boolean判断永远为真。(bool)flag的值是false,但会被认为是字符串,所以其boolean判断永远为真。
(bool)flag的值同样永远为真。要想转换为boolean,则
filter_var($flag, FILTER_VALIDATE_BOOLEAN); // false
下面是转换参考
filter_var('true', FILTER_VALIDATE_BOOLEAN); // true filter_var(1, FILTER_VALIDATE_BOOLEAN); // true filter_var('1', FILTER_VALIDATE_BOOLEAN); // true filter_var('on', FILTER_VALIDATE_BOOLEAN); // true filter_var('yes', FILTER_VALIDATE_BOOLEAN); // true filter_var('false', FILTER_VALIDATE_BOOLEAN); // false filter_var(0, FILTER_VALIDATE_BOOLEAN); // false filter_var('0', FILTER_VALIDATE_BOOLEAN); // false filter_var('off', FILTER_VALIDATE_BOOLEAN); // false filter_var('no', FILTER_VALIDATE_BOOLEAN); // false filter_var('asdfasdf', FILTER_VALIDATE_BOOLEAN); // false filter_var('', FILTER_VALIDATE_BOOLEAN); // false filter_var(null, FILTER_VALIDATE_BOOLEAN); // false
2.传0和1
当然了,为了避免这个问题,还可以这样传http://www/index.php?flag=1
此时,bool($flag)就可以了。
相关文章推荐
- php 定时任务
- js用ajax和不同页面的php互相传值的方法
- PHP实现搜索地理位置及计算两点地理位置间距离的实例
- 使用Curlftpfs挂载远程Ftp
- PHP ob缓冲浅析与理解
- PHP实现MySQL数据导出为EXCEL(CSV格式)
- vsftp配置问题启示录
- yii2 bower部分使用
- php删除字符串中的所有空格 trimall
- php中常用$_SERVER的用法
- php判断当前的访问是手机还是电脑
- PHP事务
- php之curl设置超时
- PHP自定义Mongdb的_id
- PHP使用数组依次替换字符串中匹配项
- php判断访问的当前设备是手机还是电脑
- PHP任意文件上传漏洞(CVE-2015-2348)
- PHP一个表单多个提交按钮解决方法
- php获取当前日期时间 & php日期转时间戳,指定日期转换成时间戳
- PHP实现同服务器多个二级域名共享 SESSion