PHP 检测变量是否为空

Posted Meadows of Heaven

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP 检测变量是否为空相关的知识,希望对你有一定的参考价值。

php 中以下值得计算结果为 false:

关键字 boolean false
整型 integer 0
浮点型 double 0.0
字符串 string "" 
字符串 string  "0" 
数组 array  array() 
对象  object  空对象 php<5 
null  null  NULL 

例如 字符串"0":

<?php

$number = "0";
if($number) {
	echo "string \"0\" is not false \r\n";
} else {
	echo "string \"0\" is false \r\n"; // 输出:string "0" is false
}

if(empty($number))   {
	echo "string \"0\" is false \r\n"; // 输出:string "0" is false
} else {
	echo "string \"0\" is not false \r\n"; 
}

 

空数组:

<?php

$arr= array();

if($arr) {
	echo ‘array $arr is not false‘."\r\n";
} else {
	echo ‘array $arr is false‘."\r\n"; // 输出:array $arr is false
}

if(empty($arr))   {
	echo ‘array $arr is false‘."\r\n"; // 输出:array $arr is false
} else {
	echo ‘array $arr is not false‘."\r\n";
}

  

空对象在 PHP 5 以上版本中计算结果不为 false:

$obj=(object)array();

if($obj) {
	echo ‘$obj is not false‘."\r\n"; // 输出:$obj is not false
} else {
	echo ‘$obj is false‘."\r\n";
}

if(empty($obj))   {
	echo ‘$obj is false‘."\r\n";
} else {
	echo ‘$obj is not false‘."\r\n"; // 输出:$obj is not false
}

 

注意:字符串"0.0"、字符串"00"、包括一个空格字符的字符串" "、字符串"false" 、整型 -1 都不为 false:

<?php

$number = "0.0";
if($number) {
	echo "string \"0.0\" is not false \r\n"; // 输出:string "0.0" is not false
} else {
	echo "string \"0.0\" is false \r\n";
}

if(empty($number))   {
	echo "string \"0.0\" is false \r\n";
} else {
	echo "string \"0.0\" is not false \r\n"; // 输出:string "0.0" is not false 
}

  

正确地检查一个变量是否为空应该使用:

<?php

if (empty($var)) { ... }

 

  

 

以上是关于PHP 检测变量是否为空的主要内容,如果未能解决你的问题,请参考以下文章

PHP中判断变量值是不是为空的问题

PHP中检测一个变量是不是有设置的函数是啥

在php中检测一个变量是不是设置需要使用啥函数

php怎么样判断是不是有这个变量

PHP 判断数据类型

PHP - 判断变量是否为空