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 相关文章推荐
新安装的MySQL数据库需要注意的安全知识
Jul 30 PHP
浅析echo(),print(),print_r(),return之间的区别
Nov 27 PHP
PHP is_subclass_of函数的一个BUG和解决方法
Jun 01 PHP
用PHP解决的一个栈的面试题
Jul 02 PHP
19个Android常用工具类汇总
Dec 30 PHP
php截取中文字符串函数实例
Feb 23 PHP
PHP使用CURL模拟登录的方法
Jul 08 PHP
php中strlen和mb_strlen用法实例分析
Nov 12 PHP
php arsort 数组降序排序详细介绍
Nov 17 PHP
php-fpm开启状态统计的方法详解
Jun 23 PHP
php和asp语法上的区别总结
May 12 PHP
Thinkphp5.0 框架Model模型简单用法分析
Oct 11 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数组中头部、尾部、任意元素的实现代码
2017/04/10 PHP
学习thinkphp5.0验证类使用方法
2017/11/16 PHP
php实现微信支付之企业付款
2018/05/30 PHP
IE中jscript/javascript的条件编译
2006/09/07 Javascript
js 多种变量定义(对象直接量,数组直接量和函数直接量)
2010/05/24 Javascript
可以用来调试JavaScript错误的解决方案
2010/08/07 Javascript
jQuery遮罩层效果实例分析
2016/01/14 Javascript
使用jQuery制作基础的Web图片轮播效果
2016/04/22 Javascript
Vuex 进阶之模块化组织详解
2018/01/12 Javascript
vue使用swiper.js重叠轮播组建样式
2019/11/14 Javascript
JavaScript设计模式--桥梁模式引入操作实例分析
2020/05/23 Javascript
基于vue-simple-uploader封装文件分片上传、秒传及断点续传的全局上传插件功能
2021/02/23 Vue.js
[03:15]DOTA2-DPC中国联赛1月22日Recap集锦
2021/03/11 DOTA
列举Python中吸引人的一些特性
2015/04/09 Python
python学习之编写查询ip程序
2016/02/27 Python
Scrapy-redis爬虫分布式爬取的分析和实现
2017/02/07 Python
Python验证文件是否可读写代码分享
2017/12/11 Python
python中计算一个列表中连续相同的元素个数方法
2018/06/29 Python
python 删除excel表格重复行,数据预处理操作
2020/07/06 Python
Python类型转换的魔术方法详解
2020/12/23 Python
让IE6支持css3,让 IE7、IE8 都支持CSS3
2011/10/09 HTML / CSS
Spartoo芬兰:欧洲最大的网上鞋店
2016/08/28 全球购物
使用C#编写创建一个线程的代码
2013/01/22 面试题
计算机网络毕业生自荐信
2013/10/01 职场文书
创业计划书的写作技巧及要点
2014/01/31 职场文书
创建省级文明单位实施方案
2014/02/27 职场文书
2014年党员承诺书范文
2014/05/20 职场文书
小学英语教师先进事迹
2014/05/28 职场文书
公司大门门卫岗位职责
2014/06/11 职场文书
2014入党积极分子破除“四风”思想汇报
2014/09/14 职场文书
教师党的群众路线教育实践活动个人整改方案
2014/10/31 职场文书
1000字打架检讨书
2014/11/03 职场文书
检察院起诉意见书
2015/05/20 职场文书
护士工作心得体会
2016/01/25 职场文书
个人道歉信大全
2019/04/11 职场文书
Python 统计序列中元素的出现频度
2022/04/26 Python