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 original
function extraer_title($filtro) { $param = "|<[s]*title[s]*>([^<]+)<[s]*/[s]*title[s]*>|Ui"; return $result[1]; }else{ return false; } } 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
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.