php:检查数组中的某个项是否为空

时间:2009-10-24 00:38:28

标签: php arrays

在PHP中,如何检查数组中的指定项(按名称,我认为 - 数字可能也可以)是否为空?

4 个答案:

答案 0 :(得分:41)

空的类型(来自PHP手册)。对于任何变量,以下内容均为空:

  • “”(空字符串)
  • 0(0为整数)
  • “0”(0作为字符串)
  • NULL
  • FALSE
  • array()(空数组)
  • var $ var; (声明的变量,但在类中没有值)

所以请看下面的例子:

$arr = array(
          'ele1' => 'test',
          'ele2' => false           
       );

1)$ arr ['ele3']未设置。所以:
isset($arr['ele3']) === false && empty($arr['ele3']) === true
它没有设置和空。 empty()检查变量是否设置为空。

2)$ arr ['ele2']已设置,但为空。所以:
isset($arr['ele2']) === true && empty($arr['ele2']) === true

1)$ arr ['ele1']已设置且不为空:
isset($arr['ele1']) === true && empty($arr['ele1']) === false

如果你想检查它是否为空,只需使用empty()函数。

答案 1 :(得分:9)

if(empty($array['item']))

if(!isset($array['item']))

if(!array_key_exists('item', $array))

取决于正是你的意思是“空”。请参阅empty()isset() array_key_exists()的文档,了解它们究竟意味着什么。

答案 2 :(得分:0)

<?php

$myarray=array(1,5,6,5);

$anotherarray=array();

function checkEmpty($array){  
return (count($array)>0)?1:0;  
  }
echo checkEmpty($myarray);

echo checkEmpty($anotherarray);

?>

(用于检查空结果是否为0);

我在代码中坚持紧凑。

答案 3 :(得分:0)

我遇到这样的情况,我正在获取它的最后一个数组索引,因此,如果将它们放在一起,则在大多数情况下都可以使用

<?php 

if( ctype_space($array['index'])  && empty($array['index'])  && !isset($array['index']) ){
   echo 'array index is empty';
}else{
  echo 'Not empty';
}