【发布时间】:2010-09-09 13:23:38
【问题描述】:
我想知道什么是慢或快:
if( @$myvar['test'] === null ) { .. }
或:
if( !isset( $myvar['test'] )) { .. }
还想知道如果你用 @ 隐藏警告或通知,它会使评估变慢吗?
感谢您的回答!
PS:这不是区别,我知道 isset 检查一个元素是否已设置,而不是它是否为空。但在我的情况下,重要的是知道它是否为空。
【问题讨论】:
-
!empty( $myvar['test'] )怎么样?它检查变量是否已设置且不为空。 -
除了
isset,您还可以将array_key_exists用于数组。 -
Empty是测试是否为空VALUE,而不是是否赋值。当 $myvar['test'] 包含零 (0) 时,empty 报告它是空的,但它实际上不是空的。报告为 (empty == true): '', "", 0, null。这个函数的名字有点混乱。
标签: php performance evaluation isset