什么时候在php中定义一个新的数组?


When should I define a new array in php?

我想知道哪一个更优化?

  1. 定义多个分隔数组

  2. 使用嵌套数组键

下面是一个例子:

function arr(){
    $arr1 = array();
    $arr2 = array();
    $arr3 = array();
    $arr1['key1'] = 'val1';
    $arr2['key1'] = 'val1';
    $arr3['key1'] = 'val1';
    return array($arr1, $arr2, arr3);
}

function arr(){
    $arr = array();
    $arr['arr1']['key1'] = 'val1';
    $arr['arr2']['key1'] = 'val1';
    $arr['arr3']['key1'] = 'val1';
    return $arr1;
}

实际上我没有任何问题,我只是想知道,哪种方法在php中更快?嵌套键还是分隔数组?!

如果您有一组固定的键,那么在单个语句中创建整个数组,如下所示。这将是最快和最易读的方式。

function arr(){
    return array(
      array('key1' => 'val1'),
      array('key1' => 'val2'),
      array('key1' => 'val3'),
    );
}

关于两种方法之间的性能差异-您可以像Pamblam那样对两个函数进行基准测试以找出原因。但这种差异将非常小,几乎不会有什么影响。