我正在尝试遍历一个数组,并返回一个具有设置键 => 值的数组的键和子数组。
例如...
假设我有
array(0 => array("chicken" => "free"), 1 => array("chicken" => "notfree"));
我想获取数组array("chicken" => "notfree")
并知道父键是1
我有以下...
function search($array, $key, $value) {
$arrIt = new RecursiveIteratorIterator(new RecursiveArrayIterator($array));
foreach($arrIt as $sub) {
$subArray = $arrIt->getSubIterator();
$subKey = $arrIt->key();
if(isset($subArray[$key]) && $subArray[$key] === $value) {
return array("key" => $subKey, "array" => iterator_to_array($subArray));
}
}
}
我可以轻松获得"chicken" => "notfree"
,但我似乎无法获得父键,$arrIt->key()
一直返回 null?有任何想法吗?