Corso online Responsive Design per imparare a creare siti Web table-less responsivi con HTML5 e CSS3

Creare URL brevi con TinyURL e PHP

Pubblicato da Luca Ruggiero nella categoria Server Scripting » » »

Le URL brevi sono delle URL alternative a quelle reali delle pagine di un sito che, spesso, sono molto lunghe. Per questo sono nati i servizi di URL Shorting che consentono, a fronte di un indirizzo molto lungo, di avere una URL decisamente più corta e gestibile per una pluralità di motivi.

Ad esempio:

http://www.lucaruggiero.it/blog/post/225/creare-url-brevi-con-tinyurl-e-php.html

diventerà:

http://tinyurl.com/p5k4cvg

Uno di questi potrebbe essere la condivisione sui social network, piuttosto che tenere traccia dei click che partono da una determinata pagina (del nostro sito o di un altro sito, social network inclusi) qualora il servizio di turno offra anche il sistema di conteggio dei click, e così via.

Vediamo in questo articolo come creare short URL utilizzando le API di uno dei più noti servizi di URL Shorting, TinyURL, utilizzando PHP e la libreria Curl per dinamizzare il processo.

Creiamo quindi una funzione, che chiameremo crea_url_breve() a cui passiamo come parametro l'indirizzo da abbreviare con TinyURL. Segue il codice completo della funzione:

<?PHP
    function crea_url_breve($indirizzo)
    {
        $accesso = curl_init();
        curl_setopt($accesso, CURLOPT_URL, "http://tinyurl.com/api-create.php?url=" . $indirizzo);
        curl_setopt($accesso, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($accesso, CURLOPT_CONNECTTIMEOUT, 5);
        $risultato = curl_exec($accesso);
        curl_close($accesso);
        return $risultato;
    }
?>

Lavoriamo dunque i dati con Curl, richiamiamo le API di TinyURL e creiamo una url breve che sarà il valore che restituirà la nostra funzione. A questo punto possiamo stampare a video il nostro risultato:

<?PHP
    echo crea_url_breve("http://www.lucaruggiero.it/blog/post/225/creare-url-brevi-con-tinyurl-e-php.html");
?>

che, come già detto, sarà:

http://tinyurl.com/p5k4cvg

Adesso non ci resta che linkare questo indirizzo breve dove meglio pensiamo ci convenga.

CANALI DEL BLOG
Hosting (11)
Linux (3)
Office (4)