我想用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
循环。
还有其他解决方案吗?
答案 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_fill
和foreach
不起作用吗?
当然,想到的最简单的解决方案是
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()