Recuperare il titolo di una pagina web

di il
3 risposte

Recuperare il titolo di una pagina web

Questo è lo script che mi da problemi

<html>
<head>
	<title>Home Page</title>
</head>
<body>
<?php
$url = "http://localhost/development/php/title/index.php"; //index.php è questo script

$source = implode("", file($url));

if(eregi("<title>(.+)</title>", $source, $regs)) {

echo "Title: " . $regs[1];

} else {

echo "Non trovato";

}

?>
</body>
</html>
Quando lo faccio girare mi succede una di queste cose:
- Apache crasha
- Apache va in timeout e poi rallenta l'esecuzione di qualsiasi altra cosa che altrimenti gira veloce

A voi fa la stessa cosa? Dove può essere il problema?

3 Risposte

  • Re: Recuperare il titolo di una pagina web

    Prova a cambiare $url con un path assoluto, anzichè usare http://.....






    ________________________________________________________
    Hotel Parma
  • Re: Recuperare il titolo di una pagina web

    Probabilmente lo stai facendo sulla stessa pagina e diventa una ricorsione infinita... perchè utilizzando "http..." apache interpreta il php.

    Usa il path assoluto.

    Ciao

    --------------------------------------
    Hotel Booking Software
  • Re: Recuperare il titolo di una pagina web

    La funzione EREGI è deprecata, lo script seguente (sto usando PHP 5) funziona correttamente utilizzando la funzione PREG_MATCH:
    <html>
    <head>
       <title>Home Page</title>
    </head>
    <body>
    <?php
    
    $url = $_SERVER ["SCRIPT_FILENAME"]; //prende automaticamente location e nome del file
    
    $source = file_get_contents ($url); //acquisisce il contenuto del file in una stringa
    
    if (preg_match ("/<title>(.*)<\/title>/", $source, $regs)) {
    	echo "Title: " . $regs[1];
    } else {
    	echo "Non trovato";
    }
    
    ?>
    </body>
    </html>
    Saluti

    P.S.: se poi il problema NON è questione di codice, ovviamente il discorso cambia...
Devi accedere o registrarti per scrivere nel forum
3 risposte