2 回答

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超13個贊
您可以使用一個簡單的foreach
循環(huán)array_merge
來合并兩個子數(shù)組。
<?php
$result = [];
foreach($array_1 as $index => $val){
? $result[] = array_merge($val,$array_2[$index]);
}
print_r($result);

TA貢獻(xiàn)1842條經(jīng)驗(yàn) 獲得超13個贊
使用循環(huán)合并轉(zhuǎn)置數(shù)組數(shù)據(jù),然后使用另一個循環(huán)打印到屏幕是間接編程。
理想情況下,如果可能的話,您應(yīng)該嘗試在代碼的早期合并這些結(jié)構(gòu)(我不知道這些數(shù)據(jù)集來自哪里,所以我無法提供建議。)
否則,保持兩個數(shù)組不合并,只編寫一個循環(huán)來打印到屏幕上。由于兩個數(shù)組預(yù)計(jì)通過索引相互關(guān)聯(lián),因此不會有生成通知的風(fēng)險(xiǎn)。
既然我正在寫這篇文章,我將借此機(jī)會透露一些有用的技巧:
您可以使用數(shù)組語法來解壓單元素子數(shù)組,其中靜態(tài)鍵指向
foreach()
.使用
printf()
可以幫助減少由串聯(lián)/插值引起的在線膨脹/混淆。通過將占位符 (%s
) 寫入字符串,然后在尾隨參數(shù)中傳遞這些占位符的值,通??梢蕴岣呖勺x性。
代碼:(演示)
$sites = [['title' => 'Google'], ['title' => 'Bing']];
$links = [['link' => 'www.example1.com'], ['link' => 'www.example2.com']];
foreach ($sites as $index => ['title' => $title]) {
printf(
'%s - <a href="%s">See website</a></br>',
$title,
$links[$index]['link']
);
}
輸出:
Google - <a href="www.example1.com">See website</a></br>
Bing - <a href="www.example2.com">See website</a></br>
- 2 回答
- 0 關(guān)注
- 166 瀏覽
添加回答
舉報(bào)