<?php// PHP program to carry out multidimensional array search// Multidimensional array$gfg_array=array(array('score'=>'100','name'=>'Sam','subject'=>'Data Structures'),array('score'=>'50','name'=>'Tanya','subject'=>'Advanced Algorithms'),array('score'=>'75','name'=>'Jack','subject'=>'Distributed Computing'));$id=array_search('50',array_column($gfg_array,'score'));echo$id;?>
php search multidimensional array for multiple values
/**
* PHP Search an Array for multiple key / value pairs
*/functionmulti_array_search($array,$search){// Create the result array$result=array();// Iterate over each array elementforeach($arrayas$key=>$value){// Iterate over each search conditionforeach($searchas$k=>$v){// If the array element does not meet the search condition then continue to the next elementif(!isset($value[$k])||$value[$k]!=$v){continue2;}}// Add the array element's key to the result array$result[]=$key;}// Return the result arrayreturn$result;}// Output the resultprint_r(multi_array_search($list_of_phones,array()));// Array ( [0] => 0 [1] => 1 )// Output the resultprint_r(multi_array_search($list_of_phones,array('Manufacturer'=>'Apple')));// Array ( [0] => 0 )// Output the resultprint_r(multi_array_search($list_of_phones,array('Manufacturer'=>'Apple','Model'=>'iPhone 6')));// Array ( )
<?php// PHP program to carry out multidimensional array search// Function to iteratively search for a given valuefunctionsearchForId($search_value,$array,$id_path){// Iterating over main arrayforeach($arrayas$key1=>$val1){$temp_path=$id_path;// Adding current key to search patharray_push($temp_path,$key1);// Check if this value is an array// with atleast one elementif(is_array($val1)andcount($val1)){// Iterating over the nested arrayforeach($val1as$key2=>$val2){if($val2==$search_value){// Adding current key to search patharray_push($temp_path,$key2);returnjoin(" --> ",$temp_path);}}}elseif($val1==$search_value){returnjoin(" --> ",$temp_path);}}returnnull;}// Multidimensional array $gfg_array=array(array('score'=>'100','name'=>'Sam','subject'=>'Data Structures'),array('score'=>'50','name'=>'Tanya','subject'=>'Advanced Algorithms'),array('score'=>'75','name'=>'Jack','subject'=>'Distributed Computing'));$search_path=searchForId('Advanced Algorithms',$gfg_array,array('$'));print($search_path);?>
<?php// PHP program to carry out multidimensional array search// Function to recursively search for a given valuefunctionarray_search_id($search_value,$array,$id_path){if(is_array($array)&&count($array)>0){foreach($arrayas$key=>$value){$temp_path=$id_path;// Adding current key to search patharray_push($temp_path,$key);// Check if this value is an array// with atleast one elementif(is_array($value)&&count($value)>0){$res_path=array_search_id($search_value,$value,$temp_path);if($res_path!=null){return$res_path;}}elseif($value==$search_value){returnjoin(" --> ",$temp_path);}}}returnnull;}// Multidimensional (Three dimensional) array$gfg_array=array("school1"=>array("year"=>"2017","data"=>array('score'=>'100','name'=>'Sam','subject'=>'Data Structures')),"school2"=>array("year"=>"2018","data"=>array('score'=>'50','name'=>'Tanya','subject'=>'Advanced Algorithms')),"school3"=>array("year"=>"2018","data"=>array('score'=>'75','name'=>'Jack','subject'=>'Distributed Computing')));$search_path=array_search_id('Jack',$gfg_array,array('$'));print($search_path);?>