关于PHP获取视频时长的代码
内容导读
收集整理的这篇技术教程文章主要介绍了关于PHP获取视频时长的代码,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2444字,纯文字阅读大概需要4分钟。
内容图文
本文通过实例代码给大家介绍了php获取视频时长的相关知识,非常不错,具有一定的参考借鉴价值,需要的朋友参考下吧具体代码如下所示:
/** 获得视频文件的缩略图和视频长度* @date 2018-05-16* @copyright*///获得视频文件的总长度时间和创建时间 根据视频长度判断是否失效public function getTime($url){ //获取视频重定向后的链接 $location = locationUrl($url); //获取视频Content-Length $responseHead = get_data($location); $list1 = explode("Content-Length: ", $responseHead); $list2 = explode("Connection", $list1[1]); $list = explode("x", $list2[0]); return $list[0];}//获取视频重定向后的链接function locationUrl($url){ $url_parts = @parse_url($url); if (!$url_parts) return false; if (!isset($url_parts['host'])) return false; if (!isset($url_parts['path'])) $url_parts['path'] = '/'; $sock = fsockopen($url_parts['host'], (isset($url_parts['port']) ? (int)$url_parts['port'] : '80'), $errno, $errstr, 30); if (!$sock) return false; $request = "HEAD " . $url_parts['path'] . (isset($url_parts['query']) ? '?'.$url_parts['query'] : '') . " HTTP/1.1rn"; $request .= 'Host: ' . $url_parts['host'] . "rn"; $request .= "Connection: Closernrn"; fwrite($sock, $request); $response = ''; while(!feof($sock)) { $response .= fread($sock, 8192); } fclose($sock); if (preg_match('/^Location: (.+?)$/m', $response, $matches)){ if ( substr($matches[1], 0, 1) == "/" ){ return $url_parts['scheme'] . "://" . $url_parts['host'] . trim($matches[1]); } else{ return trim($matches[1]); } } else { return false; }}//审核视频 curlfunction get_data($url){ $oCurl = curl_init(); //模拟浏览器 $header[] = "deo.com"; $user_agent = "Mozilla/4.0 (Linux; Andro 6.0; Nexus 5 Build) AppleWeb/537.36 (KHTML, like Gecko)"; curl_setopt($oCurl, CURLOPT_URL, $url); curl_setopt($oCurl, CURLOPT_HTTPHEADER,$header); curl_setopt($oCurl, CURLOPT_HEADER, true); curl_setopt($oCurl, CURLOPT_NOBODY, true); curl_setopt($oCurl, CURLOPT_USERAGENT,$user_agent); curl_setopt($oCurl, CURLOPT_RETURNTRANSFER, 1 ); // 不用 POST 方式请求, 意思就是通过 GET 请求 curl_setopt($oCurl, CURLOPT_POST, false); $sContent = curl_exec($oCurl); // 获得响应结果里的:头大小 $headerSize = curl_getinfo($oCurl, CURLINFO_HEADER_SIZE); // 根据头大小去获取头信息内容 $header = substr($sContent, 0, $headerSize); curl_close($oCurl); return $header;}
以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!
相关推荐:
PHP实现将HTML5中Canvas图像保存到服务器
PHP 获取某年第几周的开始日期和结束日期的实例讲解
以上就是关于PHP 获取视频时长的代码的详细内容,更多请关注Gxl网其它相关文章!
内容总结
以上是为您收集整理的关于PHP获取视频时长的代码全部内容,希望文章能够帮你解决关于PHP获取视频时长的代码所遇到的程序开发问题。 如果觉得技术教程内容还不错,欢迎将网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。