PHP实现使用优酷土豆视频地址获取swf播放器分享地址


Posted in PHP onJune 05, 2014

项目用到临时写的。待完善:

/*
     * 根据用户提交的(swf/html)地址,获取优酷,土豆的swf播放地址
     * */
    private function _getSwf ($url = '') {
        if(isset($url) && !empty($url)){
            preg_match_all('/http:\/\/(.*?)?\.(.*?)?\.com\/(.*)/',$url,$types);
        }else{
            return false;
        }
        $type = $types[2][0];
        $domain = $types[1][0];
        $isswf = strpos($types[3][0], 'v.swf') === false ? false : true;
        $method = substr($types[3][0],0,1);
        switch ($type){
            case 'youku' :
                if( $domain == 'player' ) {
                    $swf = $url;
                }else if( $domain == 'v' ) {
                    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';
                }else{
                    $swf = $url;
                }
                break;
            case 'tudou' :
                if($isswf){
                    $swf = $url;
                }else{
                    $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])[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;
            default :
                $swf = $url;
                break;
        }
        return $swf;
    }
   
PHP 相关文章推荐
PHP的构造方法,析构方法和this关键字详细介绍
Oct 22 PHP
PHP中判断变量为空的几种方法小结
Nov 12 PHP
php中创建和调用webservice接口示例
Jul 25 PHP
php中filter_input函数用法分析
Nov 15 PHP
PHP防止图片盗用(盗链)的方法小结
Nov 11 PHP
详解php框架Yaf路由重写
Jun 20 PHP
php实现的生成迷宫与迷宫寻址算法完整实例
Nov 06 PHP
phpfpm的作用和用法
Oct 10 PHP
laravel框架实现去掉URL中index.php的方法
Oct 12 PHP
php中加密解密DES类的简单使用方法示例
Mar 26 PHP
PHP基于openssl实现非对称加密代码实例
Jun 19 PHP
如何用Laravel包含你自己的帮助函数
May 27 PHP
一组PHP加密解密函数分享
Jun 05 #PHP
php导出csv格式数据并将数字转换成文本的思路以及代码分享
Jun 05 #PHP
php 购物车完整实现代码
Jun 05 #PHP
PHP实例分享判断客户端是否使用代理服务器及其匿名级别
Jun 04 #PHP
浅谈PHP调用Webservice思路及源码分享
Jun 04 #PHP
利用谷歌 Translate API制作自己的翻译脚本
Jun 04 #PHP
PHP函数分享之curl方式取得数据、模拟登陆、POST数据
Jun 04 #PHP
You might like
php操作excel文件 基于phpexcel
2010/07/02 PHP
PHP常用的缓存技术汇总
2014/05/05 PHP
PHP生成等比缩略图类和自定义函数分享
2014/06/25 PHP
判断、添加和删除WordPress置顶文章的相关PHP函数小结
2015/12/10 PHP
JavaScript中的View-Model使用介绍
2011/08/11 Javascript
JS随机生成不重复数据的实例方法
2013/07/17 Javascript
asp.net刷新本页面的六种方法总结
2014/01/07 Javascript
JQuery1.8 判断元素是否绑定事件的方法
2014/07/10 Javascript
javascript实现动态模态绑定grid过程代码
2014/09/22 Javascript
Javascript中实现String.startsWith和endsWith方法
2015/06/10 Javascript
jQuery入门基础知识学习指南
2015/08/14 Javascript
浅谈JavaScript超时调用和间歇调用
2015/08/30 Javascript
JavaScript中动态向表格添加数据
2017/01/24 Javascript
vue-router跳转页面的方法
2017/02/09 Javascript
layui表格实现代码
2017/05/20 Javascript
详解swipe使用及竖屏页面滚动方法
2018/06/28 Javascript
vue.js实现带日期星期的数字时钟功能示例
2018/08/28 Javascript
angular ng-model 无法获取值的处理方法
2018/10/02 Javascript
jQuery+vue.js实现的多选下拉列表功能示例
2019/01/15 jQuery
JQuery发送ajax请求时中文乱码问题解决
2019/11/14 jQuery
vue-cli 关闭热更新操作
2020/09/18 Javascript
[52:39]完美世界DOTA2联赛PWL S3 CPG vs Forest 第一场 12.16
2020/12/17 DOTA
[03:13]DOTA2-DPC中国联赛1月25日Recap集锦
2021/03/11 DOTA
python多线程抓取天涯帖子内容示例
2014/04/03 Python
python简单实现刷新智联简历
2016/03/30 Python
Python Flask-web表单使用详解
2017/11/18 Python
用Python删除本地目录下某一时间点之前创建的所有文件的实例
2017/12/14 Python
python运用pygame库实现双人弹球小游戏
2019/11/25 Python
Python 实现判断图片格式并转换,将转换的图像存到生成的文件夹中
2020/01/13 Python
详解H5本地储存Web Storage
2017/07/03 HTML / CSS
意大利宠物用品购物网站:Bauzaar
2018/09/15 全球购物
Linux面试题LINUX系统类
2014/11/19 面试题
党校毕业心得体会
2014/09/13 职场文书
建筑工地文明标语
2014/10/09 职场文书
2015年银行工作总结范文
2015/04/01 职场文书
九不准学习心得体会
2016/01/23 职场文书