Ver Mensaje Individual
  #3 (permalink)  
Antiguo 02/01/2008, 17:25
Keysher
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 21 años, 6 meses
Puntos: 17
Re: Dividir un archivo de texto en dos partes

¿Qué quieres hacer exactamente?

¿Teniendo archivo1.ext generar archivo2.ext y archivo3.ext?

Supongo que serán archivos de texto, ¿no?

Si es eso y sabiendo donde quieres dejar de escribir en uno y escribir en el otro, yo no lo haría cargando todo en un array, puede ser muy pesado, sobre todo para ficheros grandes.

Desconozco si PHP tiene funciones para tratar así a los ficheros, pero suponiendo que no las tenga, haría lo siguiente:

un bucle que recorra el primer archivo
En ese bucle, leyendo línea a línea (o caracter a carácter si te interesa atinar más el corte), iría metiendo el contenido en archivo2.
Cuando llegue al punto que me interesa (mediante una comprobación, eso dependería de cómo sacas el punto en el que quieres que corte), abriría (o crearía) el archivo3 y a partir de ese momento seguiría metiendo los datos ahí.

Con eso evitas el tener que cargar en memoria el fichero entero y luego cortarlo, ya que en memoria sólo irá la línea (o carácter) que toque en cada iteración del bucle.