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

Nat*_*iel 10 php arrays

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

mau*_*ris 42

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

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

所以请看下面的例子:

$arr = array(
          'ele1' => 'test',
          'ele2' => false           
       );
Run Code Online (Sandbox Code Playgroud)

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()函数.

  • 噢,乐于助人.如果我有足够的代表,我会赞成你们.嘿. (2认同)

cha*_*aos 10

if(empty($array['item']))
Run Code Online (Sandbox Code Playgroud)

要么

if(!isset($array['item']))
Run Code Online (Sandbox Code Playgroud)

要么

if(!array_key_exists('item', $array))
Run Code Online (Sandbox Code Playgroud)

取决于"空"的确切含义.请参阅有关empty(),isset()array_key_exists()的文档,了解它们的含义.