2016-09-02 45 views
1

我試圖顯示數組service中的服務名稱。但我沒有得到所有的名字。在樹枝模板中,它只顯示最後輸入的名稱。任何人都可以幫助我解決這個問題。這裏是我的代碼:如何顯示樹枝模板中多維數組的指定值

$data['service'] = array(); 

$sql= "SELECT * FROM services"; 

    $serviceDetails= mysql_query($sql); 

    while($row = mysql_fetch_array($serviceDetails, MYSQL_ASSOC)) 
{ 

$data['service']['name'] = $row['service_name']; 
$data['service']['id']= $row['service_id']; 

} 

echo $twig->render('test.html',$data); 

在樹枝模板,代碼,

<ul> 
    {% for service_name in service %} 
     <li>{{ service_name}}</li> 
    {% endfor %} 
    </ul> 

我只需要得到的名字。但只顯示最後輸入的名稱。

+0

service.service_name可以是? –

回答

0

用PHP中的每個循環傳遞覆蓋數組$data['service']。我不太確定你想看什麼,但我相信如果你改變了PHP這個樹枝將工作:

$data['service'] = array(); 

$sql= "SELECT * FROM services"; 

$serviceDetails= mysql_query($sql); 

while($row = mysql_fetch_array($serviceDetails, MYSQL_ASSOC)) 
{ 

    $data['service'][]=$row['service_name'] 

} 

echo $twig->render('test.html',$data); 
+0

在上面的代碼中,只有service_name正在提取。我還希望service_id ..我可以如何更改用於提取service_name和service_id的代碼。 – Reshma

+0

然後,'services'變量需要是一個數組數組。我會把它作爲一個單獨的答案發布,因爲它與上面的完全不同。 –

0

爲了得到這兩個值到您的樹枝,建立$services作爲數組的數組。關聯數組往往是最容易理解的。

步驟一,構建數據結構:

$data['service'] = array(); 

$sql= "SELECT * FROM services"; 

$serviceDetails= mysql_query($sql); 

while($row = mysql_fetch_array($serviceDetails, MYSQL_ASSOC)) 
{ 
    //Place both name and service_id in the array 
    $data['service'][]=array('name' => $row['service_name'], 'id' => $row['service_id']); 
} 

echo $twig->render('test.html',$data); 

步驟2:讀取該數據回樹枝:

<ul> 
    {% for service_data in service %} 
     {# service now contains both the id and name as separate elements #} 
     <li>{{ service_data.id}}: {{ service_data.name}}</li> 
    {% endfor %} 
</ul> 
+0

其工作..謝謝你 – Reshma

+0

@Reshma我很高興!你能接受答案嗎? –