一分鐘學會用PHP與bit.ly API做縮/短網址
做社群網站應用與行銷時,其中有一塊很重要,就是如何把長網址縮成短網址,並追蹤使用者的點擊情況。
在這樣的使用情境要求下,bit.ly的縮網址絕對是箇中翹楚,不能錯過的服務。註冊帳號之後,你可以建立短網址、分享之,還可追蹤使用者點擊情況。
或許你想運用這個服務做些自動化的流程,這個時候你就需要動動手寫點程式了。
本文希望您能在一分鐘內完成bit.ly API的PHP實作,開始計時吧~
bit.ly提供了Restful的HTTP API,簡潔好用:
/shorten 產生短網址。
/expand 從短網址產生原始往址。
/info 提供短網址進行查詢,回傳該網址相關訊息,如誰建立的。
/stats 提供短網址可查詢該網址點擊狀況。
/errors 取得bit.ly API的錯誤代碼列表。
回傳型態有json與xml兩種,真是使用者的福音。
若想用PHP來實做,底下以兩個步驟來解說,讓讀者能在一分鐘上手bit.ly API:
第一步:30秒
註冊bit.ly,登入,並取得你的API key。
- 註冊網址:http://bit.ly/account/register?rd=/
- 登入網址:http://bit.ly/account/login?rd=/
- 登入後看API:http://bit.ly/account/ 左側有 API key,長得像R_eb268db527c6dde99cdc6c7xxxxxxxxxxx(後面取代成xxxx)
第二步: 30秒
建立一個新的php檔案,例如make_url.php,內容抄下面這段PHP code,原作者為David Walsh,我加了一點註解。存檔後,在命令列下,就可以執行php make_url.php了。執行結果會在畫面上顯示bit.ly幫你產生的一個短網址,以本例來說會顯示bit.ly/6pPZlV。
<?php
* 這個function可重複運用 */
function make_bitly_url($url,$login,$appkey,$format = ‘xml’,$version = ’2.0.1′)
{
//create the URL
$bitly = ‘http://api.bit.ly/shorten?version=’.$version.’&longUrl=’.urlencode($url).’&login=’.$login.’&apiKey=’.$appkey.’&format=’.$format;//get the url
//could also use cURL here
$response = file_get_contents($bitly);//根據json還是xml來解析回傳內容
if(strtolower($format) == ‘json’)
{
$json = @json_decode($response,true);
return $json['results'][$url]['shortUrl'];
}
else //xml
{
$xml = simplexml_load_string($response);return ‘http://bit.ly/’.$xml->results->nodeKeyVal->hash;
}
}
/* 主要流程*/
$short = make_bitly_url(‘http://www.inside.com.tw’,'xxxxxxx’,'ooooooo’,'json’); //把xxxxxx內容換成你的bit.ly登入帳號;把oooooo換成你的API key
echo ‘新產生的短網址是: ‘.$short;?>


