<?php // PHP program to carry out multidimensional array // search by key=>value // Function to recursively search for a // given key=>value function search($array, $key, $value) { $results = array(); // if it is array if (is_array($array)) { // if array has required key and value // matched store result if (isset($array[$key]) && $array[$key] == $value) { $results[] = $array; } // Iterate for each element in array foreach ($array as $subarray) { // recur through each element and append result $results = array_merge($results, search($subarray, $key, $value)); } } return $results; } // Multidimensional array for student list $arr = array( "A" => array( 1 => array('rollNo'=>101, 'name'=>"AMIT"), 2 => array('rollNo'=>102, 'name'=>"BHUWAN"), 3 => array('rollNo'=>103, 'name'=>"BOB"), 4 => array('rollNo'=>104, 'name'=>"CAROT") ), "B" => array( 1 => array('rollNo'=>201, 'name'=>"ABHISHEK"), 2 => array('rollNo'=>202, 'name'=>"AMIT"), 3 => array('rollNo'=>203, 'name'=>"RONNY"), 4 => array('rollNo'=>204, 'name'=>"LOBO") ), "C" => array( 1 => array('rollNo'=>301, 'name'=>"ANMOL"), 2 => array('rollNo'=>302, 'name'=>"TONNY"), 3 => array('rollNo'=>303, 'name'=>"SANJI") ) ); $res = search($arr, 'name', 'AMIT'); foreach ($res as $var) { echo $var["rollNo"]." - ".$var['name'] . "<br>"; } ?>