我正在尝试用一个foreach循环制作一个url来回显两个数组的所有变量。一些编码示例将被兑现。
到目前为止,我有这个:
<?php
foreach($menu_names as $menu_name){
echo "<li><a href='?subj= " .urlencode($subjects["id"]). " '>".$menu_name."</a></li>";
}
?>
我想在此循环中再添加一个数组
答案 0 :(得分:9)
假设这两个数组中的项目数相同。
如果要使用foreach()
,则数组需要具有相同的索引:
foreach ($a as $index => $value)
{
echo $a[$index] .' '. $b[$index];
}
如果数组具有数字索引,则可以使用for()
:
for ($i = 0; $i < sizeof($a); $i++)
{
echo $a[$i] .' '. $b[$i];
}
答案 1 :(得分:4)
array_combine()
会将您的2个数组合并为一个key=>value
对,然后通过foreach语句访问它们
例如
foreach(array_combine($a,$b) as $key=>$value) {
echo $key."<br/>".$value;
}
答案 2 :(得分:2)
答案取决于你需要对数组做什么完全以及你需要怎样做。
如果您的数组具有类似的索引,并且您需要使用每个数组中的相同元素,那么您可以这样做
foreach ($array1 as $index => $value1) {
$value2 = $array2[$index];
// do stuff with $value1 and $value2 here
}
(虽然在这种情况下,特别是如果你发现自己这么做了,你可能想要考虑使用一个对象或数组的单个数组,这样数据总是在一起并且更容易连接。)< / p>
或者,如果数组中包含相同类型的元素,并且您希望按顺序迭代它们,则可以迭代array_merge($array1, $array2)
。 (但是,如果数组没有数字索引,特别是如果它们具有相同的字符串键,则其中一个数组元素可以替换另一个。请参阅the docs on array_merge
了解详细信息。)
根据您对元素的需求,还有很多其他可能性。 (这个问题确实没有提供任何相关信息。)
答案 3 :(得分:1)
完整代码:
1)
<?php
$First = array('a', 'b', 'c', 'd');
$Second = array('1', '2', '3', '4');
foreach($First as $indx => $value) {
echo $First[$indx].$Second[$indx];
echo "<br />";
}
?>
或2)
<?php
$First = array('a', 'b', 'c', 'd');
$Second = array('1', '2', '3', '4');
for ($indx = 0 ; $indx < count($First); $indx ++) {
echo $First[$indx] . $Second[$indx];
echo "<br />";
}
?>