介绍一些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 相关文章推荐
dede全站URL静态化改造[070414更正]
Apr 17 PHP
php获取某个目录大小的代码
Sep 10 PHP
php MsSql server时遇到的中文编码问题
Jun 11 PHP
提高PHP编程效率 引入缓存机制提升性能
Feb 15 PHP
基于php设计模式中工厂模式详细介绍
May 15 PHP
PHP错误提示的关闭方法详解
Jun 23 PHP
phpmyadmin中禁止外网使用的方法
Nov 04 PHP
PHP ajax 异步执行不等待执行结果的处理方法
May 27 PHP
PHP中如何使用session实现保存用户登录信息
Oct 20 PHP
PHP判断一个数组是另一个数组子集的方法详解
Jul 31 PHP
PHP小白必须要知道的php基础知识(超实用)
Oct 10 PHP
浅谈laravel 5.6 安装 windows上使用composer的安装过程
Oct 18 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生成静态页面详解
2006/12/05 PHP
PHP基于cookie与session统计网站访问量并输出显示的方法
2016/01/15 PHP
laravel通过创建自定义artisan make命令来新建类文件详解
2017/08/17 PHP
php实现微信支付之退款功能
2018/05/30 PHP
php中的buffer缓冲区用法分析
2019/05/31 PHP
JQuery读取XML文件数据并显示的实现代码
2009/12/16 Javascript
利用cookie记住背景颜色示例代码
2013/11/04 Javascript
jQuery对Select的操作大集合(收藏)
2013/12/28 Javascript
Node.js与PHP、Python的字符处理性能对比
2014/07/06 Javascript
JavaScript实现为input与textarea自定义hover,focus效果的方法
2015/08/21 Javascript
分享有关jQuery中animate、slide、fade等动画的连续触发、滞后反复执行的bug
2016/01/10 Javascript
JavaScript制作简单分页插件
2016/09/11 Javascript
使用Angular CLI生成 Angular 5项目教程详解
2018/03/18 Javascript
移动端滑动切换组件封装 vue-swiper-router实例详解
2018/11/25 Javascript
JQuery获取元素尺寸、位置及页面滚动事件应用示例
2019/05/14 jQuery
微信小程序 WXML节点信息查询详解
2019/07/29 Javascript
微信小程序动画组件使用解析,类似vue,且更强大
2019/08/01 Javascript
vue中实现图片压缩 file文件的方法
2020/05/28 Javascript
前端使用crypto.js进行加密的函数代码
2020/08/16 Javascript
[37:23]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#2Secret VS EG第二局
2016/03/04 DOTA
Python列表删除的三种方法代码分享
2017/10/31 Python
Python利用multiprocessing实现最简单的分布式作业调度系统实例
2017/11/14 Python
python实现搜索文本文件内容脚本
2018/06/22 Python
Python3 Click模块的使用方法详解
2020/02/12 Python
如何使用python的ctypes调用医保中心的dll动态库下载医保中心的账单
2020/05/24 Python
西部世纪面试题
2014/12/05 面试题
乔布斯斯坦福大学演讲稿
2014/05/23 职场文书
公司外出活动方案
2014/08/14 职场文书
2014教师党员个人自我评议
2014/09/20 职场文书
优秀教师自我评价范文
2014/09/27 职场文书
2014年人力资源部工作总结
2014/11/19 职场文书
2014年个人工作总结报告
2014/11/27 职场文书
2015年宣传部工作总结范文
2015/03/31 职场文书
《圆的面积》教学反思
2016/02/19 职场文书
HTML+CSS制作心跳特效的实现
2021/05/26 HTML / CSS
Mongodb 迁移数据块的流程介绍分析
2022/04/18 MongoDB