介绍一些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 相关文章推荐
ftp类(myftp.php)
Oct 09 PHP
php的大小写敏感问题整理
Dec 29 PHP
PHP用strstr()函数阻止垃圾评论(通过判断a标记)
Sep 28 PHP
C# WinForm中实现快捷键自定义设置实例
Jan 23 PHP
PHP使用适合阅读的格式显示文件大小的方法
Mar 05 PHP
PHP SPL标准库之数据结构堆(SplHeap)简单使用实例
May 12 PHP
php文件操作相关类实例
Jun 18 PHP
php实现多城市切换特效
Aug 09 PHP
PHP中的日期时间处理利器实例(Carbon)
Jun 09 PHP
CMSPRESS 10行代码搞定 PHP无限级分类2
Mar 30 PHP
laravel按天、按小时,查询数据的实例
Oct 09 PHP
laravel 框架实现无限级分类的方法示例
Oct 31 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
用libtemplate实现静态网页生成
2006/10/09 PHP
php通过分类列表产生分类树数组的方法
2015/04/20 PHP
PHP多文件上传实例
2015/07/09 PHP
php实现微信支付之退款功能
2018/05/30 PHP
Laravel框架中集成MongoDB和使用详解
2019/10/17 PHP
PHP 对象继承原理与简单用法示例
2020/04/21 PHP
JavaScript简单实现鼠标拖动选择功能
2014/03/06 Javascript
javascript实例分享---具有立体效果的图片特效
2014/06/08 Javascript
jQuery的Scrollify插件实现滑动到页面下一节点
2015/07/05 Javascript
浅谈JavaScript中的对象及Promise对象的实现
2015/11/15 Javascript
深入理解javascript的getTime()方法
2017/02/16 Javascript
JS实现列表页面隔行变色效果
2017/03/25 Javascript
如何在AngularJs中调用第三方插件库
2017/05/21 Javascript
Vue2.0 axios前后端登陆拦截器(实例讲解)
2017/10/27 Javascript
Angular父组件调用子组件的方法
2018/04/02 Javascript
不使用JavaScript实现菜单的打开和关闭效果demo
2018/05/01 Javascript
Fundebug支持监控微信小程序HTTP请求错误的方法
2019/02/21 Javascript
javascript实现弹出层效果
2019/12/10 Javascript
Vue数字输入框组件使用方法详解
2020/02/10 Javascript
Webpack5正式发布,有哪些新特性
2020/10/12 Javascript
Python编程二分法实现冒泡算法+快速排序代码示例
2018/01/15 Python
在python里面运用多继承方法详解
2019/07/01 Python
PowerBI和Python关于数据分析的对比
2019/07/11 Python
基于python实现从尾到头打印链表
2019/11/02 Python
关于tf.reverse_sequence()简述
2020/01/20 Python
Pycharm如何导入python文件及解决报错问题
2020/05/10 Python
浅谈Python 命令行参数argparse写入图片路径操作
2020/07/12 Python
Python进行统计建模
2020/08/10 Python
机电工程专业应届生求职信
2013/10/03 职场文书
四年大学生活的个人自我评价
2013/12/11 职场文书
委托证明范本
2014/11/25 职场文书
天坛导游词
2015/02/02 职场文书
责任书范本大全
2015/05/11 职场文书
经销商会议开幕词
2016/03/04 职场文书
Win11安装受阻怎么办? Windows11安装问题与解决方案汇总
2021/11/21 数码科技
Github 使用python对copilot做些简单使用测试
2022/04/14 Python