<?php
function
search(
$array
,
$key
,
$value
) {
$arrIt
=
new
RecursiveArrayIterator(
$array
);
$it
=
new
RecursiveIteratorIterator(
$arrIt
);
foreach
(
$it
as
$sub
) {
$subArray
=
$it
->getSubIterator();
if
(
$subArray
[
$key
] ===
$value
) {
$result
[] = iterator_to_array(
$subArray
);
}
}
return
$result
;
}
$arr
=
array
(
"A"
=>
array
(
1 =>
array
(
'name'
=>
"Alice"
,
'location'
=>
"Dehradun"
),
2 =>
array
(
'name'
=>
"BHUWAN"
,
'location'
=>
"Mumbai"
),
3 =>
array
(
'name'
=>
"BOB"
,
'location'
=>
"Delhi"
),
4 =>
array
(
'name'
=>
"CAROT"
,
'location'
=>
"Haryana"
)
),
"B"
=>
array
(
1 =>
array
(
'name'
=>
"ABHISHEK"
,
'location'
=>
"Dehradun"
),
2 =>
array
(
'name'
=>
"AMIT"
,
'location'
=>
"Delhi"
),
3 =>
array
(
'name'
=>
"RONNY"
,
'location'
=>
"Bengaluru"
),
4 =>
array
(
'name'
=>
"LOBO"
,
'location'
=>
"Pune"
)
),
"C"
=>
array
(
1 =>
array
(
'name'
=>
"ANMOL"
,
'location'
=>
"Delhi"
),
2 =>
array
(
'name'
=>
"TONNY"
,
'location'
=>
"Delhi"
),
3 =>
array
(
'name'
=>
"SANJI"
,
'location'
=>
"Haryana"
)
)
);
$res
= search(
$arr
,
'location'
,
'Delhi'
);
foreach
(
$res
as
$var
) {
echo
$var
[
"name"
].
" - "
.
$var
[
'location'
] .
"<br>"
;
}
?>