Foros del Web » Programando para Internet » PHP »

Eliminar 9 primeras líneas de un archivo

Estas en el tema de Eliminar 9 primeras líneas de un archivo en el foro de PHP en Foros del Web. Hola, Me gustaría eliminar las 9 primeras líneas de un archivo y dejar a partir de <?xml en la línea1 ya que sino no lee ...
  #1 (permalink)  
Antiguo 27/01/2011, 11:52
 
Fecha de Ingreso: septiembre-2010
Ubicación: Madrid
Mensajes: 44
Antigüedad: 13 años, 7 meses
Puntos: 0
Eliminar 9 primeras líneas de un archivo

Hola,

Me gustaría eliminar las 9 primeras líneas de un archivo y dejar a partir de <?xml en la línea1 ya que sino no lee el xml bien vía URL.

Abajo os pongo lo que quiero eliminar. Las 8 líneas de cabecera + la novena en blanco.

Es posible?

HTTP/1.1 200 OK
Cache-Control: private, max-age=0
Content-Length: 5039
Content-Type: text/xml; charset=utf-8
Server: Microsoft-IIS/7.0
X-AspNet-Version: 2.0.50727
X-Powered-By: ASP.NET
Date: Thu, 27 Jan 2011 17:11:19 GMT

<?xml version="1.0" encoding="utf-8"?>
  #2 (permalink)  
Antiguo 27/01/2011, 13:15
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Eliminar 9 primeras líneas de un archivo

Sí es posible, solo tienes que ir recorriendo las líneas hasta que encuentre lo que deseas. Por ejemplo
Código PHP:
Ver original
  1. <?php
  2. $file = 'f.txt';
  3. $bool = true;
  4. $str = '';
  5. foreach(file($file) as $row){
  6.     $row = trim($row);
  7.     if(empty($row) || ($bool && substr($row,0,5) != '<?xml')){ continue; }
  8.     else{ $bool = false; }
  9.     $str .= $row . PHP_EOL;
  10. }
  11. file_put_contents($file, $str);
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos

Última edición por abimaelrc; 27/01/2011 a las 13:23
  #3 (permalink)  
Antiguo 27/01/2011, 17:16
 
Fecha de Ingreso: septiembre-2010
Ubicación: Madrid
Mensajes: 44
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Eliminar 9 primeras líneas de un archivo

Muchas gracias.

Funcionó perfecto.
  #4 (permalink)  
Antiguo 27/01/2011, 17:34
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 4 meses
Puntos: 89
Respuesta: Eliminar 9 primeras líneas de un archivo

También podrías hacer algo como esto :

Código PHP:
Ver original
  1. $texto = file_get_contents('archivo.txt');
  2. $xmlpos = strpos($texto, '<?xml');
  3. $xml = substr($texto, $xmlpos);
  4. echo $xml;
__________________
Nunca te olvidaré mi negra hermosa. Te extraño demasiado.
  #5 (permalink)  
Antiguo 11/02/2011, 20:44
 
Fecha de Ingreso: junio-2008
Mensajes: 2
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: Eliminar 9 primeras líneas de un archivo

podrias indicar como lo hisiste, gracias tengo el mismo problema

Etiquetas: eliminar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:55.