具體代碼如下所示:
/** 獲得視頻文件的縮略圖和視頻長度* @date 2018-05-16* @copyright//獲得視頻文件的總長度時間和創建時間 根據視頻長度判斷是否失效html' target='_blank'>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.1/r/n $request .= Host: . $url_parts[ host ] . /r/n $request .= Connection: Close/r/n/r/n 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 獲取某年第幾周的開始日期和結束日期的實例講解
以上就是關于PHP 獲取視頻時長的代碼的詳細內容,PHP教程
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答