10

这主要是肤浅的,但检查数组是否为空的最佳方式(执行速度更快,而不是个人偏好或可读性)是什么:

  1. count($arr) == 0
  2. empty($arr)
  3. $arr === array()
  4. 其他?

我的猜测是

  1. 尽可能迭代然后返回
  2. 检查变量是否为数组后只需执行 1
  3. 似乎它应该很慢,因为它必须构造一个新对象来比较

但这并没有考虑到它在此处执行的任何编译时优化。

免责声明

我不打算通过我的代码库将所有实例更改为最快的方法,所以请不要提醒我这是微优化。这是简单的好奇心。

4

2 回答 2

2
    if(empty($arr))
    echo "Empty";
    else
    echo "Ok..!";

这是检查数组是否为空的最快和安全的方法

于 2013-03-04T13:26:43.927 回答
1

一个空数组是:

    $emptyArray = array();

检查它的空:

    if( empty( $emptyArray ) ){

         echo 'array is empty';

    }

如果数组不为空:

    $notEmptyArray = array( 'item' );

检查它不为空:

    if( !empty( $notEmptyArray ) ){

         echo 'array not empty';

    }

还有其他方法可以做到这一点,但是为这类事情构建的空函数。

于 2013-03-04T13:35:59.903 回答