2013-09-30 20 views
8

Jak mogę wstawić wartości do wielowymiarowej tablicy w php? Muszę dodać do tablicy więcej i więcej wierszy za pomocą pętli while.Wstaw wartości do tablicy wielowymiarowej php.

Oto mój kod:

$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

Trzeba będzie coś takiego jak 'for ($ i = 0; $ <= $ p: $ i ++)' pętli wewnątrz twoja pętla 'while'. – TheWolf

+0

spróbuj '' $ myarray [] = array (...); ''. Może wcześniej zainicjować '' myarray = array(); '' poza pętlą. – Kita

Odpowiedz

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

thankyou somuch .. – nikki

+0

@nikki Witamy! – 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

Dlaczego konieczne jest "foreach"? Pętla 'while' działałaby dobrze. –

+0

'while' nie działa z' zasięgiem', o ile rozumiem. To jest tylko inny sposób wykonania zadania, bardziej eleganckiego, IMHO :) – Armage

+0

Dlaczego jednak potrzebujesz 'range()'? –

Powiązane problemy