>백엔드 개발 >PHP 튜토리얼 >求助!谁能给个长短网址互转的代码或者相关链接~~

求助!谁能给个长短网址互转的代码或者相关链接~~

WBOY
WBOY원래의
2016-06-23 14:14:271120검색

长短网址 长短网址互转

求大神给个长短网址互转的代码或者相关链接
要用php写的
不要用到数据库的
类似函数加密互转的
在此先谢谢各位大神了 ^ ^

回复讨论(解决方案)

大神帮帮忙啊~~~~~

去找 google或者百度的接口去   

去找 google或者百度的接口去   

那些接口都是跳过去再跳回来的,我想要的是类似函数加密互转的

短网址,那个转换是人家控制的,你可以使用API长短URL进行查询。
比如bitly.com
它的API文档在http://dev.bitly.com/links.html

短网址,那个转换是人家控制的,你可以使用API长短URL进行查询。
比如bitly.com
它的API文档在http://dev.bitly.com/links.html
我用百度的API批量转的时候感觉速度很慢啊,是不是用错了啊?

function dwz($url){	$ch=curl_init();	curl_setopt($ch,CURLOPT_URL,"http://dwz.cn/create.php");	curl_setopt($ch,CURLOPT_POST,true);	curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);	$data=array('url'=>$url);	curl_setopt($ch,CURLOPT_POSTFIELDS,$data);	$strRes=curl_exec($ch);	curl_close($ch);	$arrResponse=json_decode($strRes,true);	if($arrResponse['status']==0){		echo iconv('UTF-8','GBK',$arrResponse['err_msg'])."\n";	}	return $arrResponse['tinyurl'];}for($i=1;$i<=10;$i++){	echo "http://zhidao.baidu.com/question/".rand(0,100000)."$i.html----->".url_short("http://zhidao.baidu.com/question/".rand(0,100000)."$i.html")."<br>";}

大神帮忙看下撒~~~

你上面写的代码有问题,都没有看到dwz在哪里用了

长短网址互转
长转短,短转长不是可逆的
我觉得都不是一一映射,不用第三方存储对应关系,是不能实现的。

长短网址互转
长转短,短转长不是可逆的
我觉得都不是一一映射,不用第三方存储对应关系,是不能实现的。

不用第三方储存,除非你自己申请一个域名,然后做一个数据库对照,一列存长地址,一列存短地址,需要时数据库查询一下,不过一个短URL的域名现在几乎都申请不到了。

你上面写的代码有问题,都没有看到dwz在哪里用了

不好意思粘错了

function dwz($url){	$ch=curl_init();	curl_setopt($ch,CURLOPT_URL,"http://dwz.cn/create.php");	curl_setopt($ch,CURLOPT_POST,true);	curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);	$data=array('url'=>$url);	curl_setopt($ch,CURLOPT_POSTFIELDS,$data);	$strRes=curl_exec($ch);	curl_close($ch);	$arrResponse=json_decode($strRes,true);	if($arrResponse['status']==0){/**错误处理*/		echo iconv('UTF-8','GBK',$arrResponse['err_msg'])."\n";	}	return $arrResponse['tinyurl'];}for($i=1;$i<=10;$i++){	echo "http://zhidao.baidu.com/question/".rand(0,100000)."$i.html----->".dwz("http://zhidao.baidu.com/question/".rand(0,100000)."$i.html")."<br>";}

长短网址互转
长转短,短转长不是可逆的
我觉得都不是一一映射,不用第三方存储对应关系,是不能实现的。

除了用数据库,还有其它方法可以实现吗?


长短网址互转
长转短,短转长不是可逆的
我觉得都不是一一映射,不用第三方存储对应关系,是不能实现的。

不用第三方储存,除非你自己申请一个域名,然后做一个数据库对照,一列存长地址,一列存短地址,需要时数据库查询一下,不过一个短URL的域名现在几乎都申请不到了。

目前是用数据库的方式做的,想知道是否有其它的方法实现

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.