note 47116 deleted from function.array-search by levim

From: Date: Mon, 24 Feb 2014 22:37:50 +0000
Subject: note 47116 deleted from function.array-search by levim
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-198643@lists.php.net to get a copy of this message
Note Submitter: scripts at webfire dot org ---- * Multi-Dimensional Array Search * If you're searching for a function to search in Multi-Arrays, this is probably usefull for you. ------------------------------------------------------------- <?php function multi_array_search($search_value, $the_array) { if (is_array($the_array)) { foreach ($the_array as $key => $value) { $result = multi_array_search($search_value, $value); if (is_array($result)) { $return = $result; array_unshift($return, $key); return $return; } elseif ($result == true) { $return[] = $key; return $return; } } return false; } else { if ($search_value == $the_array) { return true; } else return false; } } ?> ------------------------------------------------------------- It will return an Array with the keys from the original array where your search-string was found or false. e.g.: ------------------------------------------------------------- <?php $foo[1]['a']['xx'] = 'bar 1'; $foo[1]['b']['xx'] = 'bar 2'; $foo[2]['a']['bb'] = 'bar 3'; $foo[2]['a']['yy'] = 'bar 4'; $foo['info'][1] = 'bar 5'; $result = multi_array_search('bar 3', $foo); print_r($result); ?> ------------------------------------------------------------- Output: Array ( [0] => 2 [1] => a [2] => bb ) ------------------------------------------------------------- I hope you like it ;) greetz Udo  

« previous php.notes (#198643) next »