PHP函数获取TinyURL
TinyURL是一项服务,您可以在其中将长URL字符串转换为非常小的URL字符串。例如,以下URL指向GoogleMaps上的Googleplex。
http://maps.google.com/maps?f=q&source=s_q&hl=en&geocode=&q=googleplex&sll=37.579413,-95.712891&sspn=34.512672,45.615234&ie=UTF8&cd=1&z=16
可以转换为以下内容。
http://tinyurl.com/qpkor2
这非常适合发布到Twitter或类似的微博平台,因为它节省了大量字符空间。
幸运的是,TinyURL提供了一个API,因此为您的应用程序自动生成URL非常容易。以下函数都做同样的事情,返回转换后的URL,但是第一个用途file_get_contents()和第二个用途fopen()和fread()。您使用哪一个取决于您。两者都在将URL发送给TinyURL之前也准备了URL,因此当用户尝试单击URL时,URL不会中断。
function tinyUrl($url){
$tiny = 'http://tinyurl.com/api-create.php?url=';
return file_get_contents($tiny.urlencode(trim($url)));
}请注意,API返回一个25字节的字符串,因此获取前26个字节将覆盖将来的更改,以防TinyUrl增加将来返回的字符数。
function tinyUrl($url){
$tiny = 'http://tinyurl.com/api-create.php?url=';
$tinyhandle = fopen($tiny.urlencode(trim($url)), "r");
$tinyurl = fread($tinyhandle, 26);
fclose($tinyhandle);
return $tinyurl;
}