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
?>