PHP: tworzenie skróconych linków

Autor: Arkadiusz Tobiasz 5 marca 2010

TinyUrl jest fajnym serwisem, który pozwala nam na skracanie długich adresów stron WWW, czyli np. http://blog.tobiasz.org/2010/03/php-tworzenie-skroconych-linkow do postaci http://tinyurl.com/yl4p47v. Dodatkowo serwis TinyUrl.com dostarcza nam API pozwalające za pomocą skryptu PHP tworzyć takie skrócone linki „w locie”. Jak to zrobić?

W tym celu stworzymy funkcję w PHP o nazwie get_tinyURL();, która będzie nam generować skrócone linki. Jej kod prezentuje się następująco:

1
2
3
4
5
6
7
8
9
10
11
function get_tinyURL($url)  
{  
    $ch = curl_init();  
    $timeout = 5;  
    curl_setopt($ch,CURLOPT_URL,'http://tinyurl.com/api-create.php?url='.$url);  
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);  
    curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);  
    $data = curl_exec($ch);  
    curl_close($ch);  
    return $data;  
}

Powyższy kod zwraca nam skrócony link do strony, która została podana jako argument (zmienna $url). Jak korzystać z funkcji? Bardzo prosto:

1
2
3
4
5
6
$url = 'http://blog.tobiasz.org/2010/03/php-tworzenie-skroconych-linkow';
$new_url = get_tinyURL($url);

echo 'Skrócony link: '.$new_url;
echo '<br><br>';
echo 'Oryginalny link: '.$url;

Jeszcze tradycyjnie demo skryptu.

Popularity: unranked

Odpowiedz

 
Arkadiusz Tobiasz student Akademii Ekonomicznej im. Karola Adamieckiego w Katowicach na specjalnościach informatyka ekonomiczna oraz rachunkowość. Więcej...





Zend Framework: integracja z Uploadify

W tym wpisie postaram się przedstawić Wam w jaki sposób zintegrować skrypt Uploadify z Zend Frameworkiem. Dzięki temu będziemy mogli [...]

Linux: backup wszystkich baz danych MySQL

Swego czasu pisałem o tym jak z poziomu konsoli można szybko i przyjemnie zrobić backup bazy MySQL. Wszystko jest ładnie [...]

Zend Framework: gwiazdka przy wymaganych polach

W przypadku wymaganych pól w formularzach najczęściej oznacza się je poprzez dodanie gwiazdki. W tym wpisie chciałbym pokazać w jaki [...]

MySQL: GROUP_CONCAT

Ostatnio zostałem poproszony, aby na liście zamówień w sklepie PrestaShop wyświetlić listę produktów, które zostały sprzedane. Oczywiście można by było [...]