Skapa korta länkar med bit.ly och PHP

I och med att användandet av mikrobloggtjänster har ökat och folk delar mycket länkar har förkortningtjänster blivit väldigt populära. Jag tänkte därför visa hur du bygger en enkel PHP-klass och använder en av de populära tjänsterna, bit.ly. Notera att för att använda förkortningstjänsten bit.ly krävs det att du har ett konto och en API-nyckel från tjänsten.

När du väl har fixat din API-nyckel och har ett konto så är det dags att börja koda. Kollar vi på den officiella dokumentation så ser vi att länken vi använder ser ut enligt följande: http://api.bit.ly/shorten?version=2.0.1&longUrl=http://baronen.org&login=anvadare&apiKey=APINyckel&format=json
Vi skapar sedan vår ganska enkla klass som innehåller en statisk funktion, GetShortUrl.

class Bitly
{
	public static function GetShortUrl($url, $login, $api, $format = 'json')
	{
		$bitly = "http://api.bit.ly/shorten?version=2.0.1&longUrl=".$url."&login=".$login."&apiKey=".$api."&format=".$format;
		$response = file_get_contents($bitly);
		
		if($format == 'json') {
			$resultJson = json_decode($response, true);
			return $resultJson['results'][$url]['shortUrl'];
		} elseif ($format == 'xml') {
			$resultXml = simplexml_load_string($response);
			return $resultXml->results->nodeKeyVal->shortUrl;
		} else {
			return "Wrong type supplied: " . $this->format;
		}
	}
}

APIet tillåter att man väljer vilket format man vill ha tillbaka resultatet i, jag har byggt denna klass så man kan välja både json och xml.
För att sedan använda klassen anropar du den statiska funktionen. I detta exempel förkortar jag baronen.org, jag skickar även med bitly-användare, api-nyckel samt att jag vill använda formatet xml.


Resultat och demo

Se demo eller ladda ner källkoden.

2 thoughts on “Skapa korta länkar med bit.ly och PHP”

Din kommentar eller åsikt