Trouver l'URL d'origine d'un lien TinyURL

Lancé en 2002, TinyURL est un outil utilisé sur le web pour afficher des url courtes. Par exemple, l'adresse http://www.fobec.com/CMS/delphi/ressources/base-donnees-open-source-firebird-disponible-version_1031.html peut s'écrire http://tinyurl.com/3xk4g8a en utilisant le service tinyurl.

La class TinyurlRevealer décode un lien TinyUrl pour afficher l'adresse réel.

<?php

class TinyurlRevealer {   
   
    public static function decode($url) {
        $urls=parse_url($url);
        $param= $urls['path'];

        $fp = fsockopen("tinyurl.com", 80);
        if (!$fp) {
            return "";
        } else {
            $buf="";
            fputs ($fp, "HEAD ".$param." HTTP/1.0\r\nHost: tinyurl.com\r\n\r\n");
            while (!feof($fp)) {
                $buf.= fgets($fp, 128);
            }
            fclose ($fp);

            $lines = explode("\n", $buf);
            foreach ($lines as $line) {
                if (strpos($line, 'Location')!== false) {
                    return substr($line,10);
                }
            }
            return '';
           
        }
    }
}

/**
 * Exemple
 */
echo TinyurlRevealer::decode('http://tinyurl.com/3xf5cyp');
//Resultat: http://www.fobec.com
?>
 
Commentaire des internautes
avatar
options binaires le 23/01/2012
genial l'outil ! merci
Ajouter un commentaire
Pseudo
Adresse email
Site internet (optionnel)
Votre commentaire
Fiche de l'article
Mise a jour22/11/2010
VisualisationVu 944 fois
PublicInternaute
CategorieWeb - PHP - Interaction
Auteur de l'article
fobec fobec
connecté le 14/02/2012
36 ans - France Nord-Est
101 articles dans la section
Contacter l'auteur
Partager l'article