2017-07-07 31 views
0

當前我想從數據庫輸出數據。我有兩個單獨的數組。我可否知道有沒有辦法將這些陣列組合起來。代碼如下,PHP在一個循環中組合數組

$array_1 = [ 
    'memo' => 'title string', 
    'break_down' => 'title string', 
    'images' => 'title string', 
    'email_content' => 'title string' 
]; 

// content from db 
$array_2 = [$memo, $break_down, $images, $email_content]; 


// I want it to display like this 
<?php foreach ($array_1 as $key=> $name) : ?> 

<p> 
<?= $name; ?> = <?php //content on $array_2 ?> 
<?php //eg: title string = $memo and so on.. ?> 
</p> 

<?php endforeach ?> 
+0

您應該嘗試**自己編寫代碼**。在[**做更多的研究**之後](https://meta.stackoverflow.com/q/261592/1011527)如果你有問題**發佈你已經嘗試了**的**明確的解釋不工作**並提供[最小,完整和可驗證示例](http://stackoverflow.com/help/mcve)。閱讀[如何問](http://stackoverflow.com/help/how-to-ask)一個很好的問題。請務必[參觀](http://stackoverflow.com/tour)並閱讀[this](https://meta.stackoverflow.com/q/347937/1011527)。 –

回答

3

隨着array_combinearray_keys

$keys = array_keys($array_1); 
$array_2 = array_combine($keys, $array_2); 

foreach ($array_1 as $key => $name): ?> 
<p> 
<?= $name; ?> = <?php echo $array_2[$key]; ... 

請注意,您也可以直接從使用as SQL關鍵字的SQL查詢所需的鍵:

select field1 as memo, field2 as break_down ... 

並使用mysqli_fetch_assocPDO::FETCH_ASSOC

+0

謝謝你的幫助。如果我使用sql查詢字符串,我不需要像$ array_2那樣分配數組嗎? – Amran

+0

@Amran:事實上,如果你只想顯示你的查詢結果,並且在查詢中使用了'as'(或者列已經有好名字),那麼你不需要使用array_combine來* re * build a新陣列。 –