php 网址url转迅雷thunder资源下载地址的方法函数

yipeiwu_com7年前PHP代码库

其实迅雷的地址就是:

原url前面带AA,

后面带ZZ之后再base64_encode编码即可

即:  thunder:// + base64_encode("AA" + 原url + ZZ")

具体函数如下:

/**
 * 将链接转成迅雷下载链接
 * @param $url  文件链接
 * @param string $type  encode 编码 decode 解码
 * @return bool|string
 */
function Thunder($url, $type='encode') {
    if($type =='encode'){
        return "thunder://".base64_encode("AA".$url."ZZ");
    }else{
        return substr(base64_decode(substr(trim($url),10)),2,-2);
    }
}

网址url转迅雷调用示例:

/**
 * Url 转 迅雷
 */
$downloadUrl = 'http://v.yipeiwu.com';
$type = 'encode';
$thunderUrl = Thunder($downloadUrl,$type);
echo $thunderUrl;
//将输出 thunder://QUFodHRwOi8vdi55aXBlaXd1LmNvbVpa

迅雷转真实网址url调用示例

/**
 * 迅雷转Url
 */
$thunderUrl = 'thunder://QUFodHRwOi8vdi55aXBlaXd1LmNvbVpa';
$type = 'decode';
$downloadUrl = Thunder($thunderUrl,$type);
echo $downloadUrl;
//将输出 http://v.yipeiwu.com


希望以上内容对您有所帮助

标签: 函数

相关文章

解析isset与is_null的区别

isset和is_null啥区别,看手册上讲的话, isset和is_null的功能几乎完全”相反的一样”..是不是isset就是一个is_null的相反的别名?诶, 要说区别, 那还真...

PHP封装的多文件上传类实例与用法详解

本文实例讲述了PHP封装的多文件上传类实例与用法。分享给大家供大家参考,具体如下: <?php /**//* * @(#)UploadFile.php * * 可...

php数组函数序列之rsort() - 对数组的元素值进行降序排序

rsort()定义和用法 rsort() 函数对数组的元素按照键值进行逆向排序。与 arsort() 的功能基本相同。 注释:该函数为 array 中的单元赋予新的键名。这将删除原有的键...

PHP根据两点间的经纬度计算距离

这是一个不错的示例,直接贴代码,首先要知道纬度值、经度值 /** * @desc 根据两点间的经纬度计算距离 * @param float $lat 纬度值 * @param...

PHP实现的多进程控制demo示例

本文实例讲述了PHP实现的多进程控制。分享给大家供大家参考,具体如下: 自己写了个多进程控制的框架代码,留着备查 declare(ticks=1); function sigHand...