Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Como leer.. siguiente linea en un texto?

Estas en el tema de Como leer.. siguiente linea en un texto? en el foro de PHP en Foros del Web. Buenas tardes a Todos.. Estoy tratanto de devolver un valor tras comparar una cadena en una linea de un texto. Supongamos que tengo un archivo... ...
  #1 (permalink)  
Antiguo 01/07/2015, 15:49
Avatar de wunderwaffen077  
Fecha de Ingreso: marzo-2014
Mensajes: 45
Antigüedad: 10 años, 8 meses
Puntos: 3
Como leer.. siguiente linea en un texto?

Buenas tardes a Todos..

Estoy tratanto de devolver un valor tras comparar una cadena en una linea de un texto.

Supongamos que tengo un archivo... con 4 lineas de texto..

Código HTML:
<tr>            	  
<td width="18%" colspan=1  class="bgn">N&uacute;mero de RUC: </td>
 <td  class="bg" colspan=3>10209933 - DIOS TODOPODEROSO MARIO</td>
</tr> 

Código PHP:
<?php
$lines 
file('/var/www/html/OCR/consultaARCHIVO/archivo.txt');
$found false;
$search '<td width="18%" colspan=1  class="bgn">N&uacute;mero de DNI: </td>';

foreach(
$lines as $line)
{
  
$i++;

  
//DNI
  
if(strpos($line$search) !== false )
  {
    
$found true;
    echo 
$line;

  }

}
Al hacer esa busqueda me devuelve el contenido de la segunda linea "<td width="18%" colspan=1 class="bgn">N&uacute;mero de RUC: </td>".
Lo que quisiera es acceder a la linea siguiente de manera inmediata, sin volver a recorrer y obtener el valor "<td class="bg" colspan=3>10209933 - DIOS TODOPODEROSO MARIO</td>".

No quiero volver a recorrerlo por que tengo la intención de hacer más comparaciones, y retornar más lineas de valores.

Espero ser claro..
  #2 (permalink)  
Antiguo 02/07/2015, 00:56
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 16 años, 3 meses
Puntos: 2237
Respuesta: Como leer.. siguiente linea en un texto?

No es tan difícil, solo agrega un if antes de realizar la búsqueda:

Código PHP:
Ver original
  1. foreach($lines as $line) {
  2.       if($found) {
  3.              // Se supone que aquí entrarás solo una vez
  4.              // justo después de haber localizado la línea anterior
  5.              echo $line;
  6.              // Sales del cliclo
  7.             break;
  8.       }
  9.       if(strpos(bla bla bla bla) !== false) {
  10.                 $found = true;
  11.       }
  12. }
__________________
- León, Guanajuato
- GV-Foto

Etiquetas: lineas, nuevas
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 09:30.