Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/06/2010, 00:57
umberto10531
 
Fecha de Ingreso: mayo-2008
Mensajes: 31
Antigüedad: 11 años, 6 meses
Puntos: 0
Coger datos de un fichero en php a partir de una cadena de busqueda

Buenos dias, miren tengo un problema y nose muy bien como resolverlo aver si ustedes me pudieran ayudar en php.
Resulta ser que tengo un fichero con muchas filas de este tipo.


May 30 04:03:22 NEREAfw kernel: RULE 0 -- ACCEPT IN=eth0 OUT= MAC=ww:ww:ww:ww:ww:ww:ww:ww:ww:ww:ww:ww:ww:ww SRC=xxx.xxx.xxx.xxx DST=yyy.yyy.yyy.yyy LEN=135 TOS=0x00 PREC=0x00 TTL=128 ID=47956 PROTO=UDP SPT=17500 DPT=17500 LEN=115

Ha abierto el fichero e ido leyendo el fichero, este fichero es continuo es decir nunca para de procesarse y aumenta continuamente. Ami lo que me interesa es coger cada dia ya que lo programaré es coger solo las lineas del fichero de ese deia es decir si en este fichero ejemplo de antes pone May 30 solo coger las lineas del dia 30 para luego acto seguido seguir filtrando, En shell script no fue complicado pero aqui al no tener el grep que es para filtrar me está costando mas y no encuentro nada. Les paso el codigo que llevo hecho, aver si me pueden ayudar. Muchas gracias




Código PHP:
 <?php
  date_default_timezone_set
('Europe/Paris');
    
$dia=date("j");
    
$mes=date("M");
    
$ano=date("Y");
$contador=0;
$fecha=$mes." ".$dia;

//leemos el fichero
  
$fname="/var/log/messages";
  
$fp=fopen($fname,"r") or die("Erro al abrir el fichero");
  
$line fgets$fp1000 );
  
//iniciamos conexion a bbdd
  
$db_link mysql_connect('localhost''root''');
  if (
$db_link){ @mysql_select_db('tratamientoMensajes');}else {echo "error de conexion";}
  while(!
feof($fp))
  {
      
$separar=explode(" ",$line);
      
$line fgets$fp1000);
echo 
$line;
echo 
"<br>";
}
     
fclose($fp);
        
?>