In einem CSS Blog bin ich auf einen Link gestoßen, der widerrum auf einen Beitrag in einem anderen Blog verweist: http://davidwalsh.name/create-tiny-url-php

Hier wird gezeigt, wie man mittels PHP und der angebotenen API eine tinyURL anlegt (ein Dienst um lange URLs zu kürzen).

Hier der recht simple Code:

function get_tiny_url($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;
}

UPDATE:
Bei vielen Webhostern ist curl wohl nicht aktiviert.
Hier hilft folgender Code weiter, falls allow_url_fopen in der php.ini aktiviert ist.
Curl bietet allerdings den Vorteil, dass man u.A. Timeouts festlegen kann.

function get_tiny_url($url)
{
    $data = file_get_contents(”http://tinyurl.com/api-create.php?url=$url”);
    return $data;
}

Sollte selbst dies nicht möglich sein, kann man noch mit Sockets arbeiten.

4 Antworten zu “TinyURLs mit PHP erstellen”

  1. Michael P. says:

    is ja cool

    nur leider muss curl aktiviert sein, was nicht immer der fall ist…

  2. Michael says:

    hmm, jetzt wo du es sagst, schon lange nicht mehr mit normalen Webhostern gearbeitet.
    Eine andere Möglichkeit wäre diese (ungetestet, trockenprogrammiert):

    $tiny = file-get-contents(“http://tinyurl.com/api-create.php?url=$url”);

    geht allerdings auch nur, wenn allow_url_fopen in der php.ini true ist, bin mir nicht sicher, ob das oft so ist. Die letzte Möglichkeit wäre dann noch über sockets zu gehen. Falls erwünscht, kann ich hier auch noch ein Beispiel posten.

  3. srinivas says:

    It’s working but Change like this

    $tiny = file_get_contents(“http://tinyurl.com/api-create.php?url=$url”);

  4. Michael says:

    thx, was a typo =)

Hinterlasse einen Kommentar.

Network-wide options by YD - Freelance Wordpress Developer