13

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ループについてはすでに考えました。

他の解決策はありますか?

4

6 に答える 6

46

実際には次の呼び出し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
}
*/
于 2011-07-18T08:48:12.193 に答える
3
for ($i = 0; $i < $num_elements; $i++) {
    $array[$i] = null;
}
于 2011-07-18T08:47:58.877 に答える
0
array_fill(0, $element, null);

このphp関数を使用すると、インデックス0から始まる配列を作成でき、すべてnull値になります。

于 2011-07-18T08:53:57.773 に答える
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);
}
于 2011-07-18T08:48:21.367 に答える
0

array_fill最も簡単な解決策のような音の単純な使用:

$arr = array_fill($start_at, $num_elements, null);
于 2011-07-18T08:51:31.097 に答える