PHP实现将优酷土豆腾讯视频html地址转换成flash swf地址的方法


Posted in PHP onAugust 04, 2017

本文实例讲述了PHP实现将优酷土豆腾讯视频html地址转换成flash swf地址的方法。分享给大家供大家参考,具体如下:

很多用户不知道如何复制flash地址,只能在程序中帮他们替换了:

<?php
/**
 * 支持优酷、土豆、腾讯视频html到swf转换
 */
function convert_html_to_swf($url = '')
{
  if(!is_string($url) || empty($url)) return ;
  if(strpos($url, 'swf')) return $url;
  preg_match_all('/http:\/\/(.*?)?\.(.*?)?\.com\/(.*)/', $url, $types);
  $type = $types[2][0];
  $domain = $types[1][0];
  switch ($type) {
    case 'youku' :
      preg_match_all('/http:\/\/v\.youku\.com\/v_show\/id_(.*)?\.html/', $url, $url_array);
      $swf = 'http://player.youku.com/player.php/sid/' . str_replace('/', '', $url_array[1][0]) . '/v.swf';
      break;
    case 'tudou' :
      $method = substr($types[3][0], 0, 1);
      $method = $method == 'p' ? 'v' : $method;
      preg_match_all('/http:\/\/www.tudou\.com\/(.*)?\/(.*)?/', $url, $url_array);
      $str_arr = explode('/', $url_array[1][0]);
      $count = count($str_arr);
      if ($count == 1) {
        $id = explode('.', $url_array[2][0]);
        $id = $id[0];
      } else if ($count == 2) {
        $id = $str_arr[1];
      } else if ($count == 3) {
        $id = $str_arr[2];
      }
      $swf = 'http://www.tudou.com/' . $method . '/' . $id . '/v.swf';
      break;
    case 'qq' :
      $url_array = parse_url($url);
      $swf = "http://static.video.qq.com/TPout.swf?{$url_array['query']}&auto=0";
      break;
    default :
      $swf = $url;
      break;
  }
  return $swf;
}
/**
 * 优酷视频转换测试
 * html地址 http://v.youku.com/v_show/id_XNzU4Mzg2NDA4.html?f=22720170&ev=2&from=y1.1-2.10001-0.1-2
 * swf地址 http://player.youku.com/player.php/sid/XNzU4Mzg2NDA4/v.swf
 */
echo convert_html_to_swf("http://v.youku.com/v_show/id_XNzU4Mzg2NDA4.html?f=22720170&ev=2&from=y1.1-2.10001-0.1-2");
echo "<hr>";
/**
 * 腾讯视频转换测试
 *
 * html地址 http://v.qq.com/cover/w/w5lb270k15j7ita.html?vid=v0015mnd5x6
 * swf地址 http://static.video.qq.com/TPout.swf?vid=v0015mnd5x6&auto=0
 */
echo convert_html_to_swf("http://v.qq.com/cover/w/w5lb270k15j7ita.html?vid=v0015mnd5x6");
echo "<hr>";
/**
 * 土豆视频转换测试
 *
 * html地址 http://www.tudou.com/albumplay/hqtp6W5XLN8/Kscjyz4J-RE.html
 * swf地址 http://www.tudou.com/a/hqtp6W5XLN8/&iid=132223533&resourceId=0_04_0_99/v.swf
 */
echo convert_html_to_swf("http://www.tudou.com/albumplay/hqtp6W5XLN8/Kscjyz4J-RE.html");
echo "<hr>";
PHP 相关文章推荐
php session 检测和注销
Mar 16 PHP
PHP 递归效率分析
Nov 24 PHP
php中记录用户访问过的产品,在cookie记录产品id,id取得产品信息
May 04 PHP
yii框架通过控制台命令创建定时任务示例
Apr 30 PHP
从零开始学YII2框架(二)通过 Composer 安装扩展插件
Aug 20 PHP
php实现比较两个字符串日期大小的方法
May 12 PHP
php递归函数三种实现方法及如何实现数字累加
Aug 07 PHP
Ecshop 后台添加新功能栏目及管理权限设置教程
Nov 21 PHP
PHP闭包定义与使用简单示例
Apr 13 PHP
ThinkPHP5框架缓存查询操作分析
May 30 PHP
thinkPHP和onethink微信支付插件分享
Aug 11 PHP
php实现JWT(json web token)鉴权实例详解
Nov 05 PHP
Win10 下安装配置IIS + MySQL + nginx + php7.1.7
Aug 04 #PHP
php7安装yar扩展的方法详解
Aug 03 #PHP
ThinkPHP 3.2.3实现页面静态化功能的方法详解
Aug 03 #PHP
PHP7扩展开发教程之Hello World实现方法示例
Aug 03 #PHP
Kindeditor编辑器添加图片上传水印功能(php代码)
Aug 03 #PHP
phpStudy中升级MySQL版本到5.7.17的方法步骤
Aug 03 #PHP
使用PHP json_decode可能遇到的坑与解决方法
Aug 03 #PHP
You might like
php微信开发接入
2016/08/27 PHP
js 利用className得到对象的实现代码
2011/11/15 Javascript
jQuery实现图片信息的浮动显示实例代码
2013/08/28 Javascript
JS+flash实现chrome和ie浏览器下同时可以复制粘贴
2013/09/22 Javascript
node.js中使用q.js实现api的promise化
2014/09/17 Javascript
Node.js实现数据推送
2016/04/14 Javascript
浅析jquery unbind()方法移除元素绑定的事件
2016/05/24 Javascript
jQuery progressbar通过Ajax请求实现后台进度实时功能
2016/10/11 Javascript
Javascript ES6中对象类型Sets的介绍与使用详解
2017/07/17 Javascript
Node调用Java的示例代码
2017/09/20 Javascript
微信小程序实现发送模板消息功能示例【通过openid推送消息给用户】
2019/05/05 Javascript
微信小程序image图片加载完成监听
2019/08/31 Javascript
[03:16]DOTA2完美大师赛主赛事首日集锦
2017/11/23 DOTA
Python中input和raw_input的一点区别
2014/10/21 Python
python实现简单爬虫功能的示例
2016/10/24 Python
在Python中调用Ping命令,批量IP的方法
2019/01/26 Python
Python中新式类与经典类的区别详析
2019/07/10 Python
Pytorch 保存模型生成图片方式
2020/01/10 Python
互斥锁解决 Python 中多线程共享全局变量的问题(推荐)
2020/09/28 Python
详解python polyscope库的安装和例程
2020/11/13 Python
python 列表推导和生成器表达式的使用
2021/02/01 Python
HTML5 manifest离线缓存的示例代码
2018/08/08 HTML / CSS
世界首屈一指的钓鱼用品商店:TackleDirect
2016/07/26 全球购物
adidas美国官网:adidas US
2016/09/21 全球购物
Vichy薇姿加拿大官网:法国药妆,全球专业敏感肌护肤领先品牌
2018/07/11 全球购物
纽约和芝加哥当天送花:Ode à la Rose
2019/07/05 全球购物
SQL面试题
2013/04/30 面试题
新闻专业本科生的自我评价分享
2013/11/20 职场文书
标准的毕业生自荐信
2014/04/20 职场文书
群众路线剖析材料(四风)
2014/11/05 职场文书
2015年创先争优活动总结
2015/03/27 职场文书
2015年幼儿园个人工作总结
2015/04/25 职场文书
医者仁心观后感
2015/06/17 职场文书
学习经验交流会策划书
2015/11/02 职场文书
医学生自荐信范文(2016精选篇)
2016/01/28 职场文书
2016年优秀共青团员事迹材料
2016/02/25 职场文书