介绍一些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 相关文章推荐
php实现jQuery扩展函数
Oct 30 PHP
php在页面中调用fckeditor编辑器的方法
Jun 10 PHP
php中将html中的br换行符转换为文本输入中的换行符
Mar 26 PHP
ThinkPHP视图查询详解
Jun 30 PHP
win7 64位系统 配置php最新版开发环境(php+Apache+mysql)
Aug 15 PHP
php判断输入是否是纯数字,英文,汉字的方法
Mar 05 PHP
smarty高级特性之对象的使用方法
Dec 25 PHP
高质量PHP代码的50个实用技巧必备(上)
Jan 22 PHP
PHP开发实现快递查询功能详解
Apr 08 PHP
解决laravel 表单提交-POST 异常的问题
Oct 15 PHP
PHP保存Base64图片base64_decode的问题整理
Nov 04 PHP
PHP发送邮件确认验证注册功能示例【修改别人邮件类】
Nov 09 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冒泡排序算法的深入理解
2013/06/09 PHP
深入解析yii权限分级式访问控制的实现(非RBAC法)
2013/06/13 PHP
解析php多线程下载远程多个文件
2013/06/25 PHP
PHP中的多行字符串传递给JavaScript的两种方法
2014/06/19 PHP
PHP扩展开发入门教程
2015/02/26 PHP
PHP使用redis消息队列发布微博的方法示例
2017/06/22 PHP
laravel中的fillable和guarded属性详解
2019/10/23 PHP
javascript获得CheckBoxList选中的数量
2009/10/27 Javascript
javascript级联下拉列表实例代码(自写)
2013/05/10 Javascript
使用jQuery的attr方法来修改onclick值
2014/07/07 Javascript
JavaScript 学习笔记之操作符(续)
2015/01/14 Javascript
JavaScript中的原型prototype属性使用详解
2015/06/05 Javascript
Js制作点击输入框时默认文字消失的效果
2015/09/05 Javascript
Bootstrap CSS组件之输入框组
2016/12/17 Javascript
Json按某个键的值进行排序
2016/12/22 Javascript
JS中的数组转变成JSON格式字符串的方法
2017/05/09 Javascript
获取本机IP地址的实例(JavaScript / Node.js)
2017/11/24 Javascript
webpack项目调试以及独立打包配置文件的方法
2018/02/28 Javascript
mpvue小程序仿qq左滑置顶删除组件
2018/08/03 Javascript
vue下使用nginx刷新页面404的问题解决
2019/08/02 Javascript
如何使用JS console.log()技巧提高工作效率
2020/10/14 Javascript
python中wx将图标显示在右下角的脚本代码
2013/03/08 Python
python 重定向获取真实url的方法
2018/05/11 Python
使用Django开发简单接口实现文章增删改查
2019/05/09 Python
python 最简单的实现适配器设计模式的示例
2020/06/30 Python
解决python对齐错误的方法
2020/07/16 Python
详解基于python的图像Gabor变换及特征提取
2020/10/26 Python
CSS3+DIV实现漂亮的动画彩色标签
2016/06/16 HTML / CSS
Ibatis的核心配置文件都有什么
2014/09/08 面试题
构造方法和其他方法的区别?怎么调用父类的构造方法
2013/09/22 面试题
盛大笔试题
2016/11/05 面试题
2015年党建工作汇报材料
2015/06/25 职场文书
关于幸福的感言
2015/08/03 职场文书
ubuntu安装jupyter并设置远程访问的实现
2022/03/31 Python
PYTHON InceptionV3模型的复现详解
2022/05/06 Python
JavaScript实现简单的音乐播放器
2022/08/14 Javascript