Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/09/2008, 20:25
Vertigus
 
Fecha de Ingreso: noviembre-2006
Mensajes: 3
Antigüedad: 18 años
Puntos: 0
Busqueda por linea dentro de txt

Hola todos:

Estoy tratando de hacer un codigo para buscar en un archivo .txt con varias lineas, cierta cadena, ya sea de una o mas palabras, y que en los resultados me muestre todas aquellas lineas en las que se encontro esa cadena. Por ejemplo tengo en el txt:

Código:
hola como estas
bien bien y tu
bien tambien
que bueno que preguntes como estoy
y al buscar "como" me devuelva:
Código:
hola como estas
que bueno que preguntes como estoy
Es decir, en las dos lineas donde esta la palabra como.

Esto es el codigo que tengo:

Código:
<?php
$i=0; 
$file = fopen ("archivo.txt", "r");
$v=0;
while (!feof($file)) {    
    $linea = fgets($file);
    $cadena[$v]=$linea;
	$v++;    
    
}
fclose ($file); 
$bus="hola";
foreach($cadena as $pasar)
{
if( $bus == $pasar || $bus."\r\n" == $pasar )  
        {
            echo "Se encontro: ".$pasar;
            $i=1;
        }
}
if($i=='0')
{
    echo "No se encontró nada.";
	}
?>
Pero este codigo, sino me equivoco, busca la cadena exacta que esta en la linea y devuelve un solo resultado. Si me ayudaran porfavor a modificar este codigo para que no tenga que ser una linea entera del txt para que se encuentre y que me devuelva mas de un resultado.

Muchas gracias y espero haberme hecho comprender.