Ver Mensaje Individual
  #9 (permalink)  
Antiguo 02/05/2008, 09:02
Randill
 
Fecha de Ingreso: agosto-2003
Mensajes: 52
Antigüedad: 21 años, 6 meses
Puntos: 0
Re: leer ultimas lineas de archivo remoto grande

Creo k al poner el a+, tendria el mismo problema ke con el fseek, ya que la funcion fopen, esta bajando la primera parte.

este codigo (php.net) hace parcialmente lo k kiero de forma local, pero en remoto lee la primera linea como ultima y hasta ahi llega.
Código PHP:
<?php
readLastLine
("ftp://user:[email protected]/archivo.log");
function 
readLastLine ($file) {
    
$fp = @fopen($file"r");

    
$pos = -1;
    
$t " ";
    while (
$t != "\n") {
        if (!
fseek($fp$posSEEK_END)) { // *** - fseek returns 0 if successfull, and -1 if it has no succes as in seeking a byte outside the file's range
            
$t fgetc($fp);
            
$pos $pos 1;
        } else { 
// ***
            
rewind($fp); // ***
            
break; // ***
        
// ***
    
}
    
$t fgets($fp);
    
fclose($fp);
    return 
$t;
}
?>
Transferir el archivo luego de procesarlo no me sirve, ya que la idea es k sea casi instantaneo y el archivo rondea los 20 mb.

En cuanto a la solucion de a2a2, me dio una idea sobre como podria hacerlo, y es precisamente simulando ke continuo una descarga x ftp, ya que podria transferir solo la ultima parte del archivo lo k seria mas rápido. Ahora busco como se hace eso en php :p. Muchas gracias, luego cuento como salio todo.