我创建了一个空的2d数组:
multiArray = array(array());
我想使用foreach
语句向2d数组添加项目,这样对于每个项目,添加与其相关的第二个数组的所有项目。这将构建我的2D阵列。我正在这样做:
# The following variables are prepopulated with items
# $array1, my first array of items
# $array2, my second array of items
foreach ($array1 as $item1) {
foreach ($array2 as $item2) {
if ($item2['marker'] === $item1['marker'] { //item2 belongs to item 1 and thus needs to be added to the 2d array
$mulitArray[][] = [$item1][$item2];
}
}
}
虽然逻辑上似乎听起来没有用,但PHP不喜欢$mulitArray[][] = [$item1][$item2]
。
我的预期输出是一个二维数组,可以显示每个item1
,匹配的所有item2
。
先谢谢了。
答案 0 :(得分:3)
也许是这样的。
$multiArray = array();
foreach ($array1 as $item1) {
$a = array();
foreach ($array2 as $item2) {
if ($item1['marker'] == $item2['marker']) {
$a[] = $item2;
}
}
$multiArray[] = $a;
}