Foros del Web » Programando para Internet » PHP »

file_get_contents + preg_match

Estas en el tema de file_get_contents + preg_match en el foro de PHP en Foros del Web. HOla a todos, de entrada gracias de antemano por cualquier ayuda prestada: Tengo este còdigo relativamente sencillo (producto de leer allì y acá por el ...
  #1 (permalink)  
Antiguo 10/07/2012, 21:42
 
Fecha de Ingreso: noviembre-2003
Ubicación: Medellín-Colombia
Mensajes: 149
Antigüedad: 21 años
Puntos: 2
file_get_contents + preg_match

HOla a todos, de entrada gracias de antemano por cualquier ayuda prestada:

Tengo este còdigo relativamente sencillo (producto de leer allì y acá por el manual y experimentar), con el cual abro un archivo htm y luego compruebo si existe x o y palabra y si existe imprimo un mensaje:

Código PHP:
<?php
$opts 
= array('http' => array('header' => 'Accept-Charset: UTF-8, *;q=0'));
$context stream_context_create($opts);

$filename './rad5.htm';
$dan file_get_contents($filename,  false$context);

echo  
$dan;

if (
preg_match("/DECRETA/i"$dan$output)) {
    echo   
"
    <table>
    
    <br>...................Se encontro una coincidencia. </br>"  
;
} else {
    echo 
"....................No se encontro ninguna coincidencia.";
}


?>
Dìgamos que el código funciona muy bien pero tengo varios problemas:


1. Puedo cargar mas de una página htm?(por ejemplo rad5.htm y rad6.htm; he intentado y se cargan pero fusionadas.

2. Dentro de mi página php puedo delimitar el espacio donde se va a cargar la pagina htm? (en este caso rad5.htm), se le puede dar formato?

Gracias nuevamante.

Última edición por jufez; 10/07/2012 a las 22:08
  #2 (permalink)  
Antiguo 11/07/2012, 15:01
Avatar de topo_bionico  
Fecha de Ingreso: junio-2012
Mensajes: 89
Antigüedad: 12 años, 5 meses
Puntos: 20
Respuesta: file_get_contents + preg_match

No probaste haciendo un array con los nombres de los archivos html y después recorrerlo iterando los datos?

Código PHP:
<?php
$opts 
= array('http' => array('header' => 'Accept-Charset: UTF-8, *;q=0'));
$context stream_context_create($opts);

//Cargo un array con los nombres de los archivos
$array_filename=array('./rad5.htm','./rad6.htm','./rad7.htm');

//Recorro el array y por cada nombre busco la palabra clave.
foreach($array_filename as $filename){
    
$dan file_get_contents($filename,  false$context);
    echo  
$dan;
    if (
preg_match("/DECRETA/i"$dan$output)) {
        echo   
"
        <table>
        
        <br>...................Se encontro una coincidencia. </br>"  
;
    } else {
        echo 
"....................No se encontro ninguna coincidencia.";
    }
}

?>
  #3 (permalink)  
Antiguo 12/07/2012, 18:05
 
Fecha de Ingreso: noviembre-2003
Ubicación: Medellín-Colombia
Mensajes: 149
Antigüedad: 21 años
Puntos: 2
Respuesta: file_get_contents + preg_match

Es una buena opción si no quieres cargar el contenido en el documento php sino analizarlo pero si lo quieres cargar no funcionaria porque se intentarian cargar varios htm (con sus respectivas cabeceras etc) y sencillamente quedarían fusionados en el documento php.


Se me ocurre lo siguiente, no se ustedes que opinan:

1. Convertir la carga de los datos de los html en texto plano y luego cargar el texto plano en pantalla (al cual ya se le podria dar formato de x o y manera).

No se como hacer eso.

y 2. Cargar mediante código php varios frames y cargar cada htm en un frame distinto.

Tampoco se como hacer eso y si es siquiera posible.

Última edición por jufez; 12/07/2012 a las 19:54
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 22:36.