isset、array_key_exists 和 !empty 的解决方法[重复]

2024-04-04

在编写 php 代码时,我尝试尽可能多地避免警告。有一个关于数组的问题困扰了我很长一段时间。

在处理数组及其值时,我经常在开始“实际工作”之前先检查空值。

if(array_key_exists('bla', $array){
  if( !empty($array['bla']) {
    # do something
  }
}

我的问题是:

这是很多代码,只是为了检查我是否有可以使用的值。是否有一些更短的方法来检查数组中可能存在或不存在的值?


不要使用empty http://php.net/empty除非你是sure那就是你想要的:

Returns FALSE if var存在并且具有非空、非零值。否则返回TRUE.

以下内容被认为是空的:

  • ""(空字符串)
  • 0(0 作为整数)
  • 0.0(0 作为浮点数)
  • "0"(0 作为字符串)
  • NULL
  • FALSE
  • array()(一个空数组)
  • $var;(声明了一个变量,但没有值)

该手册没有明确列出“如果var doesn't存在”的情况,但这里有几个:

  • $array['undeclaredKey'](现有数组,但未声明键)
  • $undeclaredVar;(未声明的变量)

通常是array_key_exists检查应该足够了。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

isset、array_key_exists 和 !empty 的解决方法[重复] 的相关文章

随机推荐