例如,我有一个数组:
array(
array(
['make']=>ford
['color']=>blue
['type']=>automatic
),
array(
['make']=>chevrolet
['color']=>red
['type']=>manual
)
当我必须继续使用另一个键的值时,是否可以在PHP中找到已知键的值?
比方说,我的值为“蓝色”,我知道它在“颜色”键中,我现在能从这些信息中找到“汽车”的价值吗?
已知密钥的已知值是唯一的。 (在此示例中,不能有两个“蓝色”值
我希望这是有道理的,并提前感谢您的帮助。
答案 0 :(得分:3)
$knownColor = 'blue';
$knownKey = 'color';
$desiredKey = 'make';
foreach ($outerArray as $inner) {
if ($inner[$knownKey] == $knownColor) {
$result = $inner[$desiredKey];
// or to get the whole inner array:
// $result = $inner;
break;
}
}
var_dump($result);
答案 1 :(得分:1)
假设您的数组已分配给$cars
,它将会是这样的:
$knownColor = 'blue';
$knownKey = 'color';
...
foreach ($cars as $car) {
if ($car[$knownKey] === $knownColor) {
return $car;
}
}