2 回答
TA贡献1829条经验 获得超13个赞
您可以使用一个简单的foreach
循环array_merge
来合并两个子数组。
<?php
$result = [];
foreach($array_1 as $index => $val){
$result[] = array_merge($val,$array_2[$index]);
}
print_r($result);
TA贡献1842条经验 获得超12个赞
使用循环合并转置数组数据,然后使用另一个循环打印到屏幕是间接编程。
理想情况下,如果可能的话,您应该尝试在代码的早期合并这些结构(我不知道这些数据集来自哪里,所以我无法提供建议。)
否则,保持两个数组不合并,只编写一个循环来打印到屏幕上。由于两个数组预计通过索引相互关联,因此不会有生成通知的风险。
既然我正在写这篇文章,我将借此机会透露一些有用的技巧:
您可以使用数组语法来解压单元素子数组,其中静态键指向
foreach()
.使用
printf()
可以帮助减少由串联/插值引起的在线膨胀/混淆。通过将占位符 (%s
) 写入字符串,然后在尾随参数中传递这些占位符的值,通常可以提高可读性。
代码:(演示)
$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 关注
- 86 浏览
添加回答
举报