<?php
$in 
"Array
(
    [0] => Array
        (
            [name] => Dick Jansen
            [matchedMovie] => Array
                (
                    [0] => Array
                        (
                            [nameMovie] => Saw
                            [genre] => Horror
                            [patheMovie] => Texas Chainsaw 3D
                            [patheMovieGenre] => Horror
                            [score] => 100.00
                        )

                )

        )

    [1] => Array
        (
            [name] => Jim Scott
            [matchedMovie] => Array
                (
                    [0] => Array
                        (
                            [nameMovie] => Shooter
                            [genre] => Action, Thriller
                            [patheMovie] => The Shining
                            [patheMovieGenre] => Horror, Suspense/Thriller 
                            [score] => 52.38
                        )

                    [1] => Array
                        (
                            [nameMovie] => Resident Evil Movie
                            [genre] => Action/Horror
                            [patheMovie] => Texas Chainsaw 3D
                            [patheMovieGenre] => Horror
                            [score] => 63.16
                        )

                )

        )
)"
;

function 
print_r_reverse($in) { 
    
$lines explode("\n"trim($in)); 
    if (
trim($lines[0]) != 'Array') { 
        
// bottomed out to something that isn't an array 
        
return $in
    } else { 
        
// this is an array, lets parse it 
        
if (preg_match("/(\s{5,})\(/"$lines[1], $match)) { 
            
// this is a tested array/recursive call to this function 
            // take a set of spaces off the beginning 
            
$spaces $match[1]; 
            
$spaces_length strlen($spaces); 
            
$lines_total count($lines); 
            for (
$i 0$i $lines_total$i++) { 
                if (
substr($lines[$i], 0$spaces_length) == $spaces) { 
                    
$lines[$i] = substr($lines[$i], $spaces_length); 
                } 
            } 
        } 
        
array_shift($lines); // Array 
        
array_shift($lines); // ( 
        
array_pop($lines); // ) 
        
$in implode("\n"$lines); 
        
// make sure we only match stuff with 4 preceding spaces (stuff for this array and not a nested one) 
        
preg_match_all("/^\s{4}\[(.+?)\] \=\> /m"$in$matchesPREG_OFFSET_CAPTURE PREG_SET_ORDER); 
        
$pos = array(); 
        
$previous_key ''
        
$in_length strlen($in); 
        
// store the following in $pos: 
        // array with key = key of the parsed array's item 
        // value = array(start position in $in, $end position in $in) 
        
foreach ($matches as $match) { 
            
$key $match[1][0]; 
            
$start $match[0][1] + strlen($match[0][0]); 
            
$pos[$key] = array($start$in_length); 
            if (
$previous_key != ''$pos[$previous_key][1] = $match[0][1] - 1
            
$previous_key $key
        } 
        
$ret = array(); 
        foreach (
$pos as $key => $where) { 
            
// recursively see if the parsed out value is an array too 
            
$ret[$key] = print_r_reverse(substr($in$where[0], $where[1] - $where[0])); 
        } 
        return 
$ret
    } 
}
$arr print_r_reverse($in);

    
function 
searchIt($arr$searchItem){
$result = array();
$resultIndex 0;
for (
$i =0$i count($arr); $i++){
 for (
$j 0$j count($arr[$i]['matchedMovie']); $j++){
  if (
$arr[$i]['matchedMovie'][$j]['patheMovie'] == $searchItem){
   
$result[$resultIndex]['name'] = $arr[$i]['name'];
    foreach (
$arr[$i]['matchedMovie'][$j] as $key => $value){
     
$result[$resultIndex][$key] = $value;
   }
    
$resultIndex++;
  }
 } 
}
return 
$result;
}
echo 
"<pre>";
print_r(searchIt($arr'The Shining'));
?>