2013-08-17 70 views
1

我需要我的for循環返回一個數組,看起來像這樣就不能得到for循環生產所需陣列中的PHP

$nullArray =array(
0 => array("id" => 1, "label" => "test 1", "type" => "folder"), 
     array("id" => 2, "label" => "test 2", "type" => "folder"), 
     array("id" => 3, "label" => "test 3", "type" => "folder"), 
     etc... 
     etc... 
     etc... 
); 

我現在所擁有的

$nullArray = array(); 
$numOfVer = mysql_num_rows($result); 
$startArray= array(); 

//SETS FIRST NODE 
for($i =0;$i < $numOfVer;$i++) 
{ 
    $label = mysql_result($result, $i); 
    $id = $i+1; 
    $startArray = array(array('id' => $id,'label' => $label, "type" => "folder")); 


    //$startArray[]['id'] = $id; 
    //$startArray[]['label'] = $label; 
    //$startArray[]['type'] = "folder"; 
    //array_push($startArray,array(array('id' => $id,'label' => $label, "type" => "folder"))); 
    //$nullArray[0]= array(array('id' => $id,'label' => $label, "type" => "folder")); 
    //array_push($nullArray[0],array('id' => $id,'label' => $label, "type" => "folder")); 
} 
$nullArray[0] = $startArray; 

    echo json_encode($nullArray[0]); 

一切,我已經評論過的東西,我已經嘗試過,並已失敗。對於這麼簡單的事情,我已經過了很久了,所以我決定尋求幫助!先謝謝你! :)

+0

具體來說,什麼是不工作在你上面的代碼? – Mike

+0

用'$ i'試試這樣:'$ startArray [$ i] ['id']'等等。 – Bora

+0

它被下面的人解決了!感謝努力的傢伙! –

回答

1

在for循環中,您redclaring $ startArray這就是爲什麼以前的值刪除。嘗試這個。

$nullArray = array(); 
$numOfVer = mysql_num_rows($result); 
$startArray= array(); 

for($i =0;$i < $numOfVer;$i++) 
{ 
    $label = mysql_result($result, $i); 
    $id = $i+1; 
    $startArray[] = array('id' => $id,'label' => $label, "type" => "folder"); 
} 
+0

謝謝!像魅力一樣工作。它有趣的是,當你盯着一段代碼太久,你忘記了最簡單的事情。 –

+1

謝謝。如果你的問題得到解決,那麼接受它作爲答案。 –

+0

只好等5分鐘接受它,謝謝! –