if (is_array($array)) {
// Search for whole array
foreach ($array as $idx => $dummy) {
- //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'key=' . $key . ',value=' . $value . ',idx=' . $idx);
+ //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'key=' . $key . ',value=' . $value . ',idx=' . $idx . ',parentIndex[' . gettype($parentIndex) . ']=' . $parentIndex);
+ //* DEBUG: */ print 'idx=' . $idx . ',parentIndex[' . gettype($parentIndex) . ']=' . $parentIndex . ',key=' . $key . ',value=' . $value . ',array=<pre>'.print_r($array, TRUE).'</pre>';
// Is dummy an array?
- if (is_array($dummy)) {
+ if ((is_array($dummy)) && ((is_null($parentIndex)) || ($parentIndex === $value))) {
// Then search again
$subResult = search_array($dummy, $key, $value, $idx);
//* DEBUG: */ print 'subResult=<pre>' . print_r($subResult, TRUE).'</pre>';
// And merge both
$results = merge_array($results, $subResult, TRUE);
- } elseif ((isset($array[$key])) && ($array[$key] == $value)) {
+ } elseif (($key == $idx) && (isset($array[$key])) && ($array[$key] === $value)) {
// Is found, so add it
$results[$parentIndex] = $array;
+ //* DEBUG: */ print 'ARRAY: key=' . $key . ',idx=' . $idx . ',value=' . $value . ',parentIndex[' . gettype($parentIndex) . ']=' . $parentIndex . ',array=<pre>' . print_r($array, TRUE).'</pre>';
}
} // END - foreach
} // END - if