我试图通过子数组(这是多维数组的一部分)循环,并检查是否有一对键/值。如果找到了对,我想返回找到它的子数组的键。
不幸的是,似乎key()函数不适合foreach。
我如何改变这段代码来使用while循环?
如果你有更好的建议请告诉我。
foreach ($subarray as $subkey => $subvalue) {
if ($subkey == 'key_value' AND $subvalue = 'value') {
return key($subarray);
}
}
数组键不是数字。下面是一个例子:
$array['books'] = array('quantity' => 10, 'title' => 'Something')
$array['dvds'] = array('quantity' => 30, 'title' => 'Something else')
搜索名为"something"的"title",函数应该返回"books",因为这是找到子键/值对的键。
谢谢你的帮助。
$array['books'] = array('quantity' => 10, 'title' => 'Something');
$array['dvds'] = array('quantity' => 30, 'title' => 'Something else');
foreach($array as $key => $value) {
if ($value['title'] === 'Something') {
return $key;
}
}