Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - alexiscruz007

#1
Hola amigos necesito en  script que me borre las ultimas 5 lineas de un archivo csv.

He intentado con este codigo

Código (php) [Seleccionar]
if($_POST['validacion']=="si"){  
   $archivo = './datos.txt';  
   if(file_exists($archivo)) {  
       $file = fopen($archivo,'r');  
       while(!feof($file)) {  
           $name = fgets($file);  
           $lineas[] = $name;  
       }  
       fclose($file);  

       // Todas las lineas quedan almacenadas en $lineas  
       // Ahora eliminas la fila 15 por ejemplo, en el array sería la posicion 14 (empezamos por la 0)  
       unset($lineas[14]);  
       $lineas = array_values($lineas);  
       print_r($lineas);  
       // GUARDAMOS  
       $file = fopen($archivo, "w");  
       foreach( $lineas as $linea ) {  
           fwrite( $file, $linea );  
       }  
       fclose( $file );
   }
}




pero no me funciona.

luego unirlo con este para que haga lo que quiero

Código (php) [Seleccionar]
<?php
$fichero 
"mi_fichero.txt";
$filas file($fichero);
$ultima_linea count($filas); 
$ultima_linea_escritura $filas[$ultima_linea];
echo 
"Aqui esta:<br>";
echo 
"$ultima_linea_escritura";
?>



gracias de antemano por su ayuda

Mod: Etiquetas GeSHi obligatorias.
#2
PHP / php scritp para divivir archivo csv o txt
23 Febrero 2015, 21:33 PM
Tengo el siguiente codigo para dividir un archivo csv en partes mas chicas, pero el resultado de algunos sale desordenado, no se si es por que el archivo tiene un descripcion larga y tambien usa html y talvez lee algun carater de la archivo y se confunde, gracias de antemano por la ayuda.

Código (php) [Seleccionar]
<?php
/**
* Split a CSV file
*
* Each row is its own line.
* Each cell is comma-separated
* This file splits it into piece of size $size, add the header row
* and names the resulting file filename_X.csv where filename is the
* name of the original file and X is an incrementing integer.
*/

// Editable Options
$size 20000// about 20kb
$to_read 'populate.csv';

// Do not edit
$done false;
$part 0;
if ((
$handle fopen($to_read"r")) !== FALSE) {
    
$header fgets($handle);
    while (
$done == false) {
        
$locA ftell($handle); // gets the current location. START
        
fseek($handle$sizeSEEK_CUR); // jump the length of $size from current position
        
$tmp fgets($handle); // read to the end of line. We want full lines
        
$locB ftell($handle); // gets the current location. END
        
$span = ($locB $locA);
        
fseek($handle$locASEEK_SET); // jump to the START of this chunk
        
$chunk fread($handle,$span); // read the chunk between START and END
        
file_put_contents($to_read.'_'.$part.'.csv',$header.$chunk);
        
$part++;
        if (
strlen($chunk) < $size$done true;
    }
    
fclose($handle);
}
?>


Mod: Etiquetas GeSHi obligatorias.