2013-09-30 15 views
8

PHPで多次元配列に値を挿入するにはどうしたらいいですか? whileループを使用して、配列にさらに多くの行を追加する必要があります。ここでPHP多次元配列に値を挿入

は私のコードです:

$size=10; 
$p=0; 
while($p<$size) 
{ 
    $myarray = array(
     array("number"=>$data[$p],"data"=>$kkk[1],"status"=>"A"), 
     array("number"=>$data[$p],"data"=>$kkk[1],"status"=>"A")); 
    // Each time the loop executes, I need to add more array to myarray. 
    $p++; 
} 
+0

あなたは 'のためのようなものが必要になります($ I = 0; $ <= $ P:$私は++)の内側'ループあなたの 'while'ループ。 – TheWolf

+0

'' $ myarray [] = array(...); ''を試してください。あらかじめ '$ myarray = array();' 'をループ外に初期化する必要があるかもしれません。 – Kita

答えて

15
$size = 10; 
$p = 0; 
$myarray = array(); 
while($p < $size) { 
    $myarray[] = array("number" => $data[$p], "data" => $kkk[1], "status" => "A"); 
    $p++; 
} 
+0

おはようございます.. – nikki

+0

@nikkiようこそ! – zavg

0
$arr = new Array(); 
while($p<$size){ 
$arr[$p]["number"] = $data[$p]; 
$arr[$p]["data"] = $kkk[1]; 
$arr[$p]["status"] = "A"; 

$p++; 
} 
3
$my_array = array() 
foreach (range($p, $size-1) as $key) { 
    array_push($my_array, array(
     "number" => $data[$key], 
     "data" => $kkk[1], 
     "status" => "A", 
    )); 
} 
+1

ここで 'foreach'が必要なのはなぜですか? 'while'ループはうまく動作します。 –

+0

'while'は' range'で動作しません。私が理解する限りです。これは、より洗練されたIMHOのタスクを実行する別の方法です:) – Armage

+0

なぜ 'range()'が必要ですか? –