PHP生成迅雷、快车、旋风等软件的下载链接代码实例

在一些财富下载分享站点中,大家平常境遇需求在下载页中增添各样下载工具链接之处。古板的利用各下载工具官方提供的脚本(.js)生成链接的格局,其缺欠已日趋鼓起,如加载速度慢、客户端包容性难题等。

依附须求大家写了生龙活虎款利用php教程来扭转迅雷
快车
旋风二种下载软件地址,他们大致都以用到了base64加密程序来促成,代码如下。

<?php 
function Download() { 
   
$urlodd=explode(‘//’,$_POST[“url”],2卡塔尔;//把链接分成2段,//前边是第豆蔻梢头段,前面包车型客车是第二段 
   
$head=strtolower($urlodd[0]State of Qatar;//PHP对大小写敏感,先统黄金时代转变来小写,不然出现HtTp:也许ThUNDEQashqai:这种奇异的写法倒霉管理 
    $behind=$urlodd[1]; 
    if($head==”thunder:”){ 
        $url=substr(base64_decode($behind卡塔尔(قطر‎, 2,
-2State of Qatar;//base64解密,去掉前边的AA和前面ZZ 
    }elseif($head==”flashget:”){ 
        $url1=explode(‘&’,$behind,2); 
        $url=substr(base64_decode($url1[0]卡塔尔(قطر‎, 10,
-10State of Qatar;//base64解密,去掉前面后的[FLASHGET] 
    }elseif($head==”qqdl:”){ 
        $url=base64_decode($behind);//base64解密 
   
}elseif($head==”http:”||$head==”ftp:”||$head==”mms:”||$head==”rtsp:”||$head==”https:”){ 
       
$url=$_POST[“url”];//常规地址仅帮助http,https,ftp,mms,rtsp传输协议,其余地相似超少,像XX网盘实际上也是基于base64,不过有的解密了也下载不了 
    }else{
        echo “本页面临时不援助此左券”;
    } 
    return $url; 

if($_POST[“url”]!=NULL){ 
    $url=Download($_POST[“url”]); 
   
$url_thunder=”thunder://”.base64_encode(“AA”.$url.”ZZ”);//base64加密,下面的2也一样 
   
$url_flashget=”Flashget://”.base64_encode(“[FLASHGET]”.$url.”[FLASHGET]”).”&aiyh”; 
    $url_qqdl=”qqdl://”.base64_encode($url);

?>
<form action=”” method=”POST”>
请输入不足为道链接大概迅雷,快车,旋风链地址: 
<input type=text name=”url” size=”80″> 
<input type=submit value=”转换”> 
</form> 
<p>实际地址:<a href=”<?php%20echo%20$url;?>”
target=”_blank”><?php%20echo%20$url;?></a> 
<p>迅雷链:<a href=”<?php%20echo%20$url_thunder;?>”
target=”_blank”><?php%20echo%20$url_thunder;?></a> 
<p>快车链:<a href=”<?php%20echo%20$url_flashget;?>”
target=”_blank”><?php%20echo%20$url_flashget;?></a> 
<p>旋风链:<a href=”<?php%20echo%20$url_qqdl;?>”
target=”_blank”><?php%20echo%20$url_qqdl;?></a>

正文将介绍如何通过 PHP
函数管理,轻巧转移制作各样第三方下载工具的链接数据,并一贯出口到前台上。

<?php
function zhuanhuan() {
$urlodd=explode(‘//’,$_get[“url”],2卡塔尔;//把链接分成2段,//前边是率先段,前边的是第二段
$head=strtolower($urlodd[0]卡塔尔国;//php对大小写敏感,先统后生可畏调换到小写,不然现身http:大概thunder:这种古怪的写法不好管理
$behind=$urlodd[1];
if($head==”thunder:”){
$url=substr(base64_decode($behind卡塔尔, 2,
-2卡塔尔;//base64解密,去掉前边的aa和后边zz
}elseif($head==”flashget:”){
$url1=explode(‘&’,$behind,2);
$url=substr(base64_decode($url1[0]卡塔尔国, 10,
-10State of Qatar;//base64解密,去掉前面后的[flashget]
}elseif($head==”qqdl:”){
$url=base64_decode($behind);//base64解密
}elseif($head==”http:”||$head==”ftp:”||$head==”mms:”||$head==”rtsp:”||$head==”https教程:”){
$url=$_get[“url”];//常规地址仅帮助http,https,ftp,mms,rtsp传输左券,别的地相符比较少,像xx网盘实际上也是依靠base64,然而有个别解密了也下载不了
}else{
echo “本页面权且不协理此公约”;
}
return $url;
}
if($_get[“url”]!=null){
$url=zhuanhuan($_get[“url”]);
$url_thunder=”thunder://”.base64_encode(“aa”.$url.”zz”);//base64加密,下面的2也一样
$url_flashget=”flashget://”.base64_encode(“[flashget]”.$url.”[flashget]”).”&aiyh”;
$url_qqdl=”qqdl://”.base64_encode($url);
}
?>
<form action=cs.php method=get>
www.111cn.net
请输入司空眼惯链接只怕迅雷,快车,旋风链地址:
<input type=text name=”url” size=”80″>
<input type=submit value=”转换”>
</form>
<p>实际地址:<a href=”<?php%20echo%20$url;?>”
target=”_blank”><?php%20echo%20$url;?></a>
<p>迅雷链:<a href=”<?php%20echo%20$url_thunder;?>”
target=”_blank”><?php%20echo%20$url_thunder;?></a>
<p>快车链:<a href=”<?php%20echo%20$url_flashget;?>”
target=”_blank”><?php%20echo%20$url_flashget;?></a>
<p>旋风链:<a href=”<?php%20echo%20$url_qqdl;?>”
target=”_blank”><?php%20echo%20$url_qqdl;?></a>

 

该意义所用到的 PHP 函数:

  1. base64_encode: 用于以 base64 格局加密字符串;
  2. base64_decode: 用于解密以 base64 格局加密的字符串。

例子1

以庐山真面目下载地址更换第三方工具下载链接 PHP 代码:

 代码如下

$url = ”;
 
// 可从以下代码推知各类第三方工具下载链接的可信赖构成
$url_thunder = ‘thunder://’ . base64_encode ( ‘AA’ . $url . ‘ZZ’ );
$url_flashget =
‘flashget://’ . base64_encode ( ‘[FLASHGET]’ . $url . ‘[FLASHGET]’
);
$url_qqdl = ‘qqdl://’ . base64_encode ( $url );

从第三方工具下载链接还原成原始链接 PHP 代码:

 代码如下

$url_old = ”;
 
// 将字符串以 // 为界限分开
$temp = explode ( ‘//’ ,
$url_old, 2 );
// 剖断 // 前的字符(已转移为题写)
switch ( strtolower( $temp[0] ) ) {
    case ‘thunder:’:
        $url_new = substr (
base64_decode ( $temp[1] ), 2, -2 );
        break;
    case ‘flashget:’:
        $url_new = substr ( base64_decode ( $temp[1] ), 10, -10 );
        break;
    case ‘qqdl:’:
        $url_new = base64_decode ( $temp[1] );
        break;
}

例子2

 代码如下

<?php
function zhuanhuan() {
 $urlodd=explode(‘//’,$_GET[“url”],2卡塔尔(قطر‎;//把链接分成2段,//前面是率先段,前面包车型大巴是第二段
 $head=strtolower($urlodd[0]State of Qatar;//PHP对大小写敏感,先统生龙活虎转变到小写,不然现身HtTp:可能ThUNDEGL450:这种奇特的写法不好管理
 $behind=$urlodd[1];
 if($head==”thunder:”){
  $url=substr(base64_decode($behind卡塔尔(قطر‎, 2,
-2State of Qatar;//base64解密,去掉前边的AA和后边ZZ
 }elseif($head==”flashget:”){
  $url1=explode(‘&’,$behind,2);
  $url=substr(base64_decode($url1[0]卡塔尔, 10,
-10卡塔尔;//base64解密,去掉前面后的[FLASHGET]
 }elseif($head==”qqdl:”){
  $url=base64_decode($behind);//base64解密
 }elseif($head==”http:”||$head==”ftp:”||$head==”mms:”||$head==”rtsp:”||$head==”https:”){
  $url=$_GET[“url”];//常规地址仅帮衬http,https,ftp,mms,rtsp传输协议,其余地日常相当少,像XX网盘实际上也是依据base64,可是一些解密了也下载不了
 }else{
  echo “本页面暂且不扶助此合同”;
 }
 return $url;
}
if($_GET[“url”]!=NULL){
 $url=zhuanhuan($_GET[“url”]);
 $url_thunder=”thunder://”.base64_encode(“AA”.$url.”ZZ”);//base64加密,下面的2也一样
 $url_flashget=”Flashget://”.base64_encode(“[FLASHGET]”.$url.”[FLASHGET]”).”&aiyh”;
 $url_qqdl=”qqdl://”.base64_encode($url);
}
?>
<form action=cs.php method=GET>
请输入不以为奇链接可能迅雷,快车,旋风链地址:
<input type=text name=”url” size=”80″>
<input type=submit value=”转换”>
</form>
<p>实际地址:<a href=”<?php%20echo%20$url;?>”
target=”_blank”><?php%20echo%20$url;?></a>
<p>迅雷链:<a href=”<?php%20echo%20$url_thunder;?>”
target=”_blank”><?php%20echo%20$url_thunder;?></a>
<p>快车链:<a href=”<?php%20echo%20$url_flashget;?>”
target=”_blank”><?php%20echo%20$url_flashget;?></a>
<p>旋风链:<a href=”<?php%20echo%20$url_qqdl;?>”
target=”_blank”><?php%20echo%20$url_qqdl;?></a>

改动效果如下

图片 1

发表评论

电子邮件地址不会被公开。 必填项已用*标注