Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/12/2012, 16:43
vmelero
 
Fecha de Ingreso: octubre-2010
Mensajes: 88
Antigüedad: 13 años, 7 meses
Puntos: 1
Buscar cadena en array multidimensional

Hola de nuevo,
Ahora tengo problemas para buscar una cadena en el array multidimensional que tengo definido en una clase de la siguiente forma:
Código PHP:
 class Listado_Completo
        
{
            protected 
$datosArray =array(0=> array( "El medico""Noah Gordon""Time Warner"),
                
1=>array("Marina""Carlos Ruiz Zafon""Edebe"),
                
2=> array("La hoguera de la vanidades""Tom Wolfe""RBA editores"),
                
3=> array("El libro de las ilusiones""Paul Auster""Faber"),
                
4=> array("La muerte en Venecia""Michael Mann""Anaya"), 
                
5=> array("A sangre fria""Truman Capote","Illusions"),
                
6=> array("2001: Odisea en el espacio","Arthur C. Clarke""P&J"));  
         
                     
           public function 
Get_Listado_Completo(){                
               return 
$this->datosArray;
           }            
          
        } 
Para realizar las busqueda he probado con la función array_search y con in_array pero no consigo hacerlo funcionar.
He creado una función que recibe como parametro de entrada la cadena introducida por el usuario y lo que tengo que hacer, es que si encuentra la cadena introducida en cualquiera de las posiciones, me muestre toda la fila.
Os muestro el codigo que tengo ahora y que falla

Código PHP:
function BuscaCadena($valor){
        
     require (
"ListadoCompleto.php");
     
$Gestiona = new Listado_Completo();      
     
$resul $Gestiona->Get_Listado_Completo();  
        for(
$j0$jcount($Gestiona->Get_Listado_Completo()); $j++){                 
            
          if(
in_array($valor$resul[j][0])== true||in_array($valor$resul[j][1]== true) ||
                     
in_array($valor$resul[j][2])== true)
                   {                       
                       
printf ("<td align=left><font color= white>%s</td>",$resul[$j][0]);
                       
printf ("<td align=left><font color= white>%s</td>",$resul[$j][1]);
                       
printf ("<td align=left><font color= white>%s</td>",$resul[$j][2]);
                         echo 
"</tr>";
                   }                
       }
   } 
El error que me da es el siguiente:

Notice: Use of undefined constant j - assumed 'j' in C:\..........n line 78

Notice: Undefined index: j in C:................. on line 78

Warning: in_array() [function.in-array]: Wrong datatype for second argument in.....

A ver si me podéis iluminar de nuevo!
Muchas gracias por vuestra ayuda!