我在this网站上找到了下面的Bitly API代码。我很难创建它,然后回显一个名为$ fullurl的变量的Bitly缩短的URL。我该怎么办?
编辑:没有出现错误代码,只显示没有缩短网址的网址。
编辑2: var_dump($response);
返回NULL
编辑3:我确实用我的我的API登录和密钥替换了。
编辑4:我在原始教程的其中一条评论中找到了答案。我的问题对于所有PHP专业人员来说都太基础了:我只需要在最后添加echo bitly_shorten($fullurl);
。
提前致谢,
约翰
function bitly_shorten($url)
{
$query = array(
"version" => "2.0.1",
"longUrl" => $url,
"login" => API_LOGIN, // replace with your login
"apiKey" => API_KEY // replace with your api key
);
$query = http_build_query($query);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://api.bit.ly/shorten?".$query);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
curl_close($ch);
$response = json_decode($response);
if($response->errorCode == 0 && $response->statusCode == "OK") {
return $response->results->{$url}->shortUrl;
} else {
return null;
}
}
答案 0 :(得分:1)
将其更改为:
function bitly_shorten($url){
$query = array(
"version" => "2.0.1",
"longUrl" => $url,
"login" => API_LOGIN, // replace with your login
"apiKey" => API_KEY // replace with your api key
);
$query = http_build_query($query);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://api.bitly.com/v3/shorten?".$query);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
curl_close($ch);
$response = json_decode($response);
if( $response->status_txt == "OK") {
return $response->data->url;
} else {
return null;
}
}
答案 1 :(得分:0)
似乎bit.ly已经更新了他们的api,请访问
http://code.google.com/p/bitly-api/wiki/ApiDocumentation#Authentication_and_Shared_Parameters
for api ..
网址似乎是这样的, http://api.bitly.com/v3/shorten?.....
他们声明的新版本是3,在你的代码中是2.0.1
每当您使用在线服务的api时,最好从他们的网站上获取,而不是从任何第三方网站或博客获取..
答案 2 :(得分:0)
我在原始教程的其中一条评论中找到了答案。我的问题对于所有PHP专业人员来说都太基础了:我只需要在最后添加echo bitly_shorten($fullurl);
。