介绍一些PHP判断变量的函数


Posted in PHP onApril 24, 2012

虽然这一特点使用PHP编程非常容易,但它也存在一个重要的缺陷:当你需要测试一个变量的类型时,处理类型比较松散的语言就让人有些迷惑。幸运地是,PHP的开发者注意到这一情况,因此在其中包含了一个函数工具包,特别用它来测试变量并查明它们属于哪个特定的字符类别——也就是说,它们是否包含字符串、整数、对象或布尔值。

下面列出了这一类别中较为有用的函数,并提供说明与应用实例。

empty($var)
这个函数用来检查变量是否为空(没有值或零值)。用此函数来检查用户输入,例如,表格变量。保证它们包含有效数据。

<?php 
// returns false 
$var = "hello"; 
echo empty($var) ? "true" : "false"; 
// returns true 
$var = 0000; 
echo empty ($var) ? "true" : "false"; 
?>

gettype($var)
这个函数返回变量的类型。例如,"字符串"、"整数"、"布尔值"、"浮点值"等。在把变量插入严格类型的数据库域前,一般用此函数来验证变量是否为你期待的类型。
<?php 
// returns string 
$var = "hello"; 
echo gettype($var); 
//returns double 
$var = 1000.56; 
echo gettype($var); 
?>

is_bool($var)
这个函数测试一个变量看它是否包含一个布尔值(真/假)。用此函数检查变量是否为布尔变量。
<?php 
// returns true 
$var = false; 
echo is_bool($var) ? "true" : "false"; 
?>

is_string($var)
这个函数测试一个变量是否为字符串变量。用此函数检查一个变量是否包含字符串数据。
<?php 
// returns true 
$var = "exception"; 
echo is_string($var) ? "true" : "false"; 
// returns true 
$var = "88408"; 
echo is_string($var) ? "true" : "false"; 
?>

is_numeric($var)
这个函数测试一个变量看它是否包含一个数字或数字字符串(字符串包括一个符号、数字与小数点)。在将变量用于计算前,用此函数来验证它是否包含一个数字。
<?php 
// returns true 
$var = "+99.766"; 
echo is_numeric($var) ? "true" : "false"; 
// returns false 
$var = "b00"; 
echo is_numeric($var) ? "true" : "false"; 
?>

is_array($var)
这个函数测试一个变量看它是一个PHP相关或是数字顺序索引数组。在循环中进行处理前,用此函数来检查变量是否为一个数组。
<?php 
// returns true 
$var = array("tiger", "lion", "zebra"); 
echo is_array($var) ? "true" : "false"; 
// returns false 
$var = "zebra"; 
echo is_array($var) ? "true" : "false"; 
?>

is_null($var)
这个函数测试一个变量看它是否为NULL。在评估由SQL查询返回的数据时,用此函数来检查一个变量是否为NULL。
<?php 
// returns false 
$var = "aa"; 
echo is_null($var) ? "true" : "false"; 
// returns true 
$var = null; 
echo is_null($var) ? "true" : "false"; 
?>

is_object($var)
这个函数测试一个变量看它是否为一个PHP对象。在调用一个方法或访问属性前,一般用此函数来测试变量是否为PHP对象。
<?php 
// returns false 
$var = "exception"; 
echo is_object($var) ? "true" : "false"; 
// returns true 
$var = new Exception; 
echo is_object($var) ? "true" : "false"; 
?>

isset($var)
这个函数测试一个变量看它是否已被定义。在评估表格提交的结果时,一般用此函数来测试一个变量是否被定义。
<?php 
// returns true 
$var = "yes"; 
echo isset($var) ? "true" : "false"; 
// returns false 
echo isset($test) ? "true" : "false"; 
?>

print_r($var)
这个函数打印一个变量的内容。用此函数来"窥探"一个变量,特别是在调试一个脚本时。
<?php 
$var = array("one", "two", array("red", "green"), new Exception, 467); 
print_r($var); 
?>
PHP 相关文章推荐
兼容PHP5的PHP目录管理函数库
Jul 10 PHP
PHPnow安装服务[apache_pn]失败的问题的解决方法
Sep 10 PHP
php数组函数序列之in_array() - 查找数组中是否存在指定值
Nov 07 PHP
php除数取整示例
Apr 24 PHP
浅谈PHP中单引号和双引号到底有啥区别呢?
Mar 04 PHP
PHP实现批量修改文件后缀名的方法
Jul 30 PHP
Zend Framework生成验证码并实现验证码验证功能(附demo源码下载)
Mar 22 PHP
php查询操作实现投票功能
May 09 PHP
cakephp2.X多表联合查询join及使用分页查询的方法
Feb 23 PHP
thinkPHP实现的联动菜单功能详解
May 05 PHP
php微信公众号开发之校园图书馆
Oct 20 PHP
PHP进阶学习之Geo的地图定位算法详解
Jun 19 PHP
PHP的几个常用数字判断函数代码
Apr 24 #PHP
php中邮箱地址正则表达式实现与详解
Apr 24 #PHP
PHPMYADMIN导入数据最大为2M的解决方法
Apr 23 #PHP
php 多关键字 高亮显示实现代码
Apr 23 #PHP
php入门之连接mysql数据库的一个类
Apr 21 #PHP
洪恩在线成语词典小偷程序php版
Apr 20 #PHP
php 文件上传实例代码
Apr 19 #PHP
You might like
第七章 php自定义函数实现代码
2011/12/30 PHP
简单的php新闻发布系统教程
2014/05/09 PHP
一个简洁实用的PHP缓存类完整实例
2014/07/26 PHP
ExtJS GridPanel 根据条件改变字体颜色
2010/03/08 Javascript
input输入框的自动匹配(原生代码)
2013/03/19 Javascript
javascript中的document.open()方法使用介绍
2013/10/09 Javascript
导入extjs、jquery 文件时$使用冲突问题解决方法
2014/01/14 Javascript
20分钟成功编写bootstrap响应式页面 就这么简单
2016/05/12 Javascript
jQuery图片左右滚动代码 有左右按钮实例
2016/06/20 Javascript
JS两种类型的表单提交方法实例分析
2016/11/28 Javascript
微信小程序 欢迎页面的制作(源码下载)
2017/01/09 Javascript
jQuery页面弹出框实现文件上传
2017/02/09 Javascript
axios发送post请求springMVC接收不到参数的解决方法
2018/03/05 Javascript
解决iview打包时UglifyJs报错的问题
2018/03/07 Javascript
node中间层实现文件上传功能
2018/06/11 Javascript
vue富文本框(插入文本、图片、视频)的使用及问题小结
2018/08/17 Javascript
vue实现设置载入动画和初始化页面动画效果
2019/10/28 Javascript
vue项目前端微信JSAPI与外部H5支付相关实现过程及常见问题
2020/04/14 Javascript
js 实现碰撞检测的示例
2020/10/28 Javascript
理解Python垃圾回收机制
2016/02/12 Python
Python3使用requests登录人人影视网站的方法
2016/05/11 Python
在python中使用正则表达式查找可嵌套字符串组
2017/10/24 Python
PyCharm代码格式调整方法
2018/05/23 Python
基于Django框架利用Ajax实现点赞功能实例代码
2018/08/19 Python
在linux下实现 python 监控usb设备信号
2019/07/03 Python
Django实现将views.py中的数据传递到前端html页面,并展示
2020/03/16 Python
python爬虫筛选工作实例讲解
2020/11/23 Python
Python排序函数的使用方法详解
2020/12/11 Python
乐高官方旗舰店:LEGO积木玩具
2019/04/06 全球购物
有机婴儿毛毯和衣服:Monica + Andy
2020/03/01 全球购物
简述安装Slackware Linux系统的过程
2012/05/08 面试题
家庭贫困证明书(3篇)
2014/09/15 职场文书
离婚起诉状范本
2015/05/19 职场文书
关于运动会的宣传稿
2015/07/23 职场文书
《作风建设永远在路上》心得体会
2016/01/21 职场文书
python 如何用terminal输入参数
2021/05/25 Python