Hola a todos!. Tengo la siguiente función:
Código PHP:
function extraer($pri){
$preg_url = str_replace("http://","",$pri);
//Abro la url
$fp = fopen("$pri","r");
if (!$fp) {
return ("Salto un error $errno");
} else {
fputs ($fp, "GET / HTTP/1.0\r\nHost: $preg_url\r\n\r\n");
while (!feof($fp)) {
//leo línea a línea hasta 128 caracteres. y lo pongo en $dati
[B] $dati.= fgets ($fp,128); }[/B];
//cierro la conección
fclose ($fp);
//armo array que limpia
$preg_data = Array ("'.*?<html>'si","'.*?</head>'si");
//limpio el html
$cache = preg_replace($preg_data, " ", $dati);
return $cache;
};
};
El problema lo tengo el la línea
$dati.= fgets ($fp,128); };
y debería solo tomar 128 caracteres por línea y no la página entera.
1)¿qué solución hay a esto, ya que necesito almacenar parte de la url seleccionada y no toma la página?
2) Esta función me consume mucha memoria, ¿se puede mejorar más?, ¿se puede hacer lo mismo con código C ?
Muchas gracias!.