php的各种比较函数

1.empty() 检查一个变量是否为空

<?php
$ret = empty($a);//$ret = true

$a = 0;
$ret = empty($a);//$ret = true

$a = 0.0;
$ret = empty($a);//$ret = true

$a = '0';
$ret = empty($a);//$ret = true

$a = false;
$ret = empty($a);//$ret = true

$a = null;
$ret = empty($a);//$ret = true

$a = '';
$ret = empty($a);//$ret = true

$a = array();
$ret = empty($a);//$ret = true
?>

从如上结果可以得出
1.当且仅当参数值为非空非零时返回false,否则返回true
2.当变量不存在的时候不会产生警告
3.当变量只不存在或者是变量为
(1)” : 空字符串
(2)0 : 作为整数的0
(3)0.0 : 作为浮点数的0
(4) ‘0’ : 作为字符串的0
(5)null
(6)false
(7)array()
(8)$var;(声明了但没有值得变量)
以上返回true。即为空

所以我们在程序里面需要判断GET 或 POST 的参数是否为空在使用empty的同时还要判断参数是否为0(数字、字符串)如:

<?php
if(empty($GET('a') && $GET('a') != str
?>

2.isset() 检测变量是否设置并且不是null

<?php
$ret = isset($a);//$ret = false

$a = 0;
$ret = isset($a);//$ret = true

$a = 0.0;
$ret = isset($a);//$ret = true

$a = '0';
$ret = isset($a);//$ret = true

$a = false;
$ret = isset($a);//$ret = true

$a = null;
$ret = isset($a);//$ret = false

$a = '';
$ret = isset($a);//$ret = true

$a = array();
$ret = isset($a);//$ret = true

$a = '\0';
$ret = isset($a);//$ret = true

$a = 56;
unset($a);
$ret = isset($a); //$ret = true
?>

这里需要注意,如果使用了unset()释放变量,它将不再是isset()。
若使用isset()测试一个被设置成NULL的变量,将返回false。
同时需要注意的是一个NULL字节(‘\0’)并不等同于PHP的NULL常数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值