我有两个多维数组,
$textEvaluasi = [
[0]=>[
[0] => "BTC Hotel",
[1] => "Hotel Jaya"
]
,
[3]=>[
[0] => "BTC Hotel"
]
,
[4]=>[
[0] => "Lokasi BTC Hotel"
]
,
[5]=>[
[0] => "Lokasi BTC Hotel"
]
];和:
$hasil = [
[0]=>[
[0] => "BTC Hotel",
[1] => "Hotel Jaya"
]
,
[3]=>[
[0] => "BTC Hotel"
]
,
[4]=>[
[0] => "BTC Hotel"
]
,
[5]=>[
[0] => "BTC Hotel"
]
];我需要比较$textEvaluasi和$hasil,如果键和值匹配,那么我将打印键和值。
我试过了,但它不能正常工作。这是我目前正在做的事情:
foreach ($textEvaluasi as $key => $value) {
foreach ($value as $key2 => $value2) {
foreach ($hasil as $key3 => $value3) {
foreach ($value3 as $key4 => $value4) {
if (strtolower($textEvaluasi[$key][$key2]) === strtolower($hasil[$key3][$key4])){
echo $key . $value2;
}
}
}
echo "<br>";
}
}我的代码的输出是:
[0] -> BTC Hotel
[3] -> BTC Hotel
[4] -> BTC Hotel
[5] -> BTC Hotel预期输出:
[0] -> BTC Hotel, Hotel Jaya
[3] -> BTC Hotel非常感谢您的帮助,谢谢。
发布于 2017-10-21 16:27:37
为此,您可以使用array_filter,如下所示:
$result = array_filter($textEvaluasi, function ($arr, $key) use ($hasil) {
return $hasil[$key] === $arr;
}, ARRAY_FILTER_USE_BOTH);https://stackoverflow.com/questions/46861206
复制相似问题