PHP Recursive Array Replace by Key or Value

ay_replace_recursive, recursive array replace, multi-dimensional arrays, array_replace, array replacement, replace array values

function ArrayReplace($Array, $Find, $Replace){
      if(is_array($Array)){
            foreach($Array as $Key=>$Val) {
                  if(is_array($Array[$Key])){
                        $Array[$Key] = ArrayReplace($Array[$Key], $Find, $Replace);
                  }else{
                        if($Key === $Find) {
                           $Array[$Key] = $Replace;
                        }
                  }
            }
      }
      return $Array;
}

$Array = array('FirstName'=>"Alex",'DOB'=>'1985-06-12');
echo '<pre>',print_r($Array,1),'</pre>';

$Array = ArrayReplace($Array,'DOB',date('j \of\ F Y',strtotime($Array['DOB'])));
echo '<pre>',print_r($Array,1),'</pre>';