php - 动态创建一个用N null元素初始化的数组

时间:2011-07-18 08:45:49

标签: php arrays dynamic-arrays

我想用N(不知道N)元素动态创建一个数组。

像功能一样的东西

public function create_array($num_elements){

     .....
}

让我回复

//call the function.... 
create_array(3);

//and the output is: 
array{
   0 => null
   1 => null
   2 => null
}

我已经考虑过 array_fill 和一个简单的 foreach 循环。

还有其他解决方案吗?

6 个答案:

答案 0 :(得分:34)

实际上拨打array_fill就足够了:

//...
public function create_array($num_elements){
    return array_fill(0, $num_elements, null);
}
//..

var_dump(create_array(3));
/*
array(3) {
  [0]=> NULL
  [1]=> NULL
  [2]=> NULL
}
*/

答案 1 :(得分:3)

for ($i = 0; $i < $num_elements; $i++) {
    $array[$i] = null;
}

答案 2 :(得分:0)

array_fillforeach不起作用吗?

当然,想到的最简单的解决方案是

function create_array($num_elements) {
    $r = array();
    for ($i = 0; $i < $num_elements; $i++)
        $r[] = null;
    return $r;
}

array_fill也应该有效:

function create_array($num_elements) {
    return array_fill(0, $num_elements, null);
}

答案 3 :(得分:0)

简单使用array_fill听起来就像是最简单的解决方案:

$arr = array_fill($start_at, $num_elements, null);

答案 4 :(得分:0)

array_fill(0, $element, null);

使用这个php函数,你可以用起始索引0创建数组,并且所有数组都将具有空值。

答案 5 :(得分:-1)

foreach 循环中,您只需使用range()