|
|
|
|
Like this code?
Show the author your appreciation.
|
|
| |
The following code will probably be understood better by advanced user, this code will only search array elements.
meaning if you have $array[books][php][0] and you are searching for 'php' it will not find the [php] array, i am sure that with minor
modifications you could make it find either the element or an array element.
Hopefully this code will help someone else, i just spent 30 minutes getting this to work ;)
| <?php
// the function that will recursivly search an array.
function searchArrayRecursive($needle, $haystack){
// loop through the haystack that has been passed in
foreach ($haystack as $key => $arr) {
// check to make sure that the element is an array
if(is_array($arr)) {
/* this is the tricky line, this will take the value
or $arr and call the function again each time
the function is called, $ret is set with the
return value of the function call, this builds
the string that get's returned.
*/
$ret=searchArrayRecursive($needle, $arr);
/* check to make sure that the function call did
not return -1 and return the value of the $key and
the $ret
*/
if($ret!=-1) return $key.','.$ret;
} else {
/* check the array element and see if it matches the
search term. if it does, return the $key of the
element.
*/
if($arr == $needle) return (string)$key;
}
}
// nothing was found, return -1
return -1;
}
// create the actual array to use ;)
$myArray = array (
"computer" => array(
"hardware" => array(
"modem", "hard drive", "ram", "mother board"
),
"softare" => array(
"photoshop", "quickbooks"
)
),
"cars" => array(
"honda" => array(
"civic", "accord"
),
"toyota" => array(
"4Runner", "camry", "carolla", "rav4", "tundra"
)
),
"books" => array(
"php" => array(
"sams teach yourself php mysql and apache",
"core php programming"
)
)
);
// nicely format and print the value of $myArray
print "<pre>";
print_r($myArray);
print "</pre>";
// set the value to find in the array
$findWhat = "tundra";
// call the function with the needle and haystack.
$result = searchArrayRecursive($findWhat, $myArray);
// check to make sure the returned result was not -1
if($result != -1) {
/* create the result array from the string returned from
the function.
*/
$result = explode(',', $result);
/* Loop through the array to create an array format string
such as $array[this][that][0]
*/
foreach($result as $element) {
// append the element to the $result string
$result .= '['.$element.']';
}
}
// check to make sure the result of the function is not -1
if($result != -1) {
// tell us we found what we were looking for.
echo 'Found '.$findWhat.'! '.$result;
} else {
/* tell us that we didnt find any array keys matching
the search term.
*/
echo 'Couldn\'t Find <b>\''.$findWhat.'\'</b> in the array.';
}
?> | | |
|
| PHP Script to find url links in a page Categories : PHP, URLs, Regexps, Arrays | | | Tag content retrieval from websites with preg_match Categories : PHP, Regexps, Arrays, HTML and PHP | | | Array values from javascript to php Categories : PHP, Java Script, Arrays | | | clearing variables in php3 Categories : Variables, Arrays, PHP | | | Weighted Random - Random Scripts usually chose one out of each item, and each item have an equal chance to be chosen. But what if you want an item to be chosed more frequently than other? Categories : PHP, Math., Arrays | | | Display list of files within current and subdirectories (recursively) showing
each file as an anchored link and each directory as a category header. Categories : Filesystem, Directories, Arrays, PHP | | | Array Insertion Categories : PHP, PHP Classes, Arrays | | | Check for functional file links (broken Files)
Categories : PHP, Data Validation, FTP, Regexps, Arrays | | | Single-file PHP news system with automatic folder structure creation Categories : PHP, Filesystem, Arrays | | | This gets the http response headers for a given url and returns them in an assoc array. i.e. to test if a url exists: $array = get_http_headers($url); if($array[result]=200) { } Categories : HTTP, Arrays, PHP | | | Beginners Array Functions Categories : PHP, Beginner Guides, Arrays | | | How to pass an array from one PHP Script to another via an HTML form Categories : PHP, HTML and PHP, Arrays | | | How to load a query result into a PHP Array Categories : PHP, Databases, Arrays, MySQL | | | dynamic table columns Categories : PHP, HTML and PHP, Arrays, Databases, MySQL | | | A recursive function to traverse a multi-dimensional array where the
dimensions are not known Categories : Arrays, PHP, Algorithms | |
|
|
|