Buenas...
Quiero extraer el title de una url con file_get_contents().
En un principio hice esto:
Código PHP:
Ver original<?php
function extraer_title($filtro) {
$param = "|<[s]*title[s]*>([^<]+)<[s]*/[s]*title[s]*>|Ui";
return $result[1];
}else{
return false;
}
}
$url= "http://www.url.com";
$title = extraer_title($recorrer);
echo $title;
...funcionaba bien pero tenia el problema de q algunas paginas bloqueaban el uso de file_get... y con unos ejemplos del user abimaelrc llegue a esto:
Código PHP:
Ver originalfunction extraer_title($filtro) {
$param = "|<[s]*title[s]*>([^<]+)<[s]*/[s]*title[s]*>|Ui";
return $result[1];
}else{
return false;
}
}
$options = array('http' => array( 'header' => 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; es-ES; rv:1.9.0.6) Gecko/2009011913 Firefox/3.0.6' . PHP_EOL
) );
$title = extraer_title($page);
echo $title;
....luego surgio el problema de q mi pagina web, al hacer uso de esa funcion y de file_get... me cargaba muy lenta y ahi es donde me quede.
Lo ultimo q hice es esto:
Código PHP:
Ver original$options = array('http' => array( 'header' => 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; es-ES; rv:1.9.0.6) Gecko/2009011913 Firefox/3.0.6' . PHP_EOL
) );
$doc = new DOMDocument();
@$doc->loadHTML($page);
$nodes = $doc->getElementsByTagName('title');
$title = $nodes->item(0)->nodeValue;
echo $title;
...pero sigue cargando muy lento todo.
Como lo puedo solucionar?
Gracias.
Saludos.