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 相关文章推荐
3
Oct 09 PHP
ip签名探针
Oct 09 PHP
手把手教你使用DedeCms的采集的图文教程
Mar 11 PHP
PHP中foreach循环中使用引用要注意的地方
Jan 02 PHP
PHP连接SQLSERVER 注意事项(附dll文件下载)
Jun 28 PHP
PHP基础教程(php入门基础教程)一些code代码
Jan 06 PHP
php模拟ping命令(php exec函数的使用方法)
Oct 25 PHP
动态表单验证的操作方法和TP框架里面的ajax表单验证
Jul 19 PHP
PHP实现的简单sha1加密功能示例
Aug 27 PHP
PHP静态方法和静态属性及常量属性的区别与介绍
Mar 22 PHP
Laravel登录失败次数限制的实现方法
Aug 26 PHP
宝塔面板出现“open_basedir restriction in effect. ”的解决方法
Mar 14 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 魔术函数使用说明
2010/05/14 PHP
一个PHP二维数组排序的函数分享
2014/01/17 PHP
php实现文件下载实例分享
2014/06/02 PHP
php递归创建目录的方法
2015/02/02 PHP
yii2 resetful 授权验证详解
2017/05/18 PHP
PHP中的异常处理机制深入讲解
2020/11/10 PHP
JS中简单的实现像C#中using功能(有源码下载)
2007/01/09 Javascript
Packer 3.0 JS压缩及混淆工具 下载
2007/05/03 Javascript
IE浏览器兼容Firefox的JS脚本的代码
2008/10/23 Javascript
javascript 面向对象编程  function是方法(函数)
2009/09/17 Javascript
JavaScript 自动分号插入(JavaScript synat:auto semicolon insertion)
2009/11/04 Javascript
CSS和JS标签style属性对照表(方便js开发的朋友)
2010/11/11 Javascript
jQuery圆形统计图开发实例
2015/01/04 Javascript
js 声明数组和向数组中添加对象变量的简单实例
2016/07/28 Javascript
JS中setTimeout和setInterval的最大延时值详解
2017/02/13 Javascript
原生JS实现Ajax跨域请求flask响应内容
2017/10/24 Javascript
微信小程序picker组件简单用法示例【附demo源码下载】
2017/12/05 Javascript
element-ui中的select下拉列表设置默认值方法
2018/08/24 Javascript
vue+layui实现select动态加载后台数据的例子
2019/09/20 Javascript
JS+CSS实现3D切割轮播图
2020/03/21 Javascript
js实现购物车商品数量加减
2020/09/21 Javascript
python教程之用py2exe将PY文件转成EXE文件
2014/06/12 Python
Python 实现随机数详解及实例代码
2017/04/15 Python
Python中pow()和math.pow()函数用法示例
2018/02/11 Python
python实现word 2007文档转换为pdf文件
2018/03/15 Python
python实现将文件夹内的每张图片批量分割成多张
2019/07/22 Python
Python如何给函数库增加日志功能
2020/08/04 Python
使paramiko库执行命令时在给定的时间强制退出功能的实现
2021/03/03 Python
广州地球村科技数据库题目
2016/04/25 面试题
几道数据库的面试题或笔试题
2014/05/31 面试题
采购部长岗位职责
2014/06/13 职场文书
法人授权委托书样本
2014/09/19 职场文书
重阳节演讲稿:尊敬帮助老人 弘扬传统美德
2014/09/25 职场文书
python 实现定时任务的四种方式
2021/04/01 Python
Java反应式框架Reactor中的Mono和Flux
2021/07/25 Java/Android
vue 给数组添加新对象并赋值
2022/04/20 Vue.js