本文使用「署名 4.0 国际 (CC BY 4.0)」许可协议,欢迎转载、或重新修改使用,但需要注明来源。 [署名 4.0 国际 (CC BY 4.0)](https://creativecommons.org/licenses/by/4.0/deed.zh) 本文作者: 苏洋 创建时间: 2012年02月14日 统计字数: 744字 阅读时间: 2分钟阅读 本文链接: https://soulteary.com/2012/02/14/php%E8%8E%B7%E5%8F%96flv%E6%96%87%E4%BB%B6%E6%97%B6%E9%97%B4.html ----- # PHP 获取 FLV 文件时间 PHP如何获取FLV文件时间呢,答案是fopen文件后查看FLV文件是HEX数据,并转换为number。 ```php $flv_header_frame_length) { fseek($fp, $frame_size_data_length - $flv_header_frame_length, SEEK_CUR); } $duration = 0; while ((ftell($fp) + 1) < $flv_data_length) { $this_tag_header = fread($fp, 16); $data_length = BigEndian2Int(substr($this_tag_header, 5, 3)); $timestamp = BigEndian2Int(substr($this_tag_header, 8, 3)); $next_offset = ftell($fp) - 1 + $data_length; if ($timestamp > $duration) { $duration = $timestamp; } fseek($fp, $next_offset, SEEK_SET); } fclose($fp); return $duration; } function get_flv_file_time($time) { $time = getTime($time); $num = $time; $sec = intval($num / 1000); $h = intval($sec / 3600); $m = intval(($sec % 3600) / 60); $s = intval(($sec % 60)); $tm = $h . ':' . $m . ':' . $s; return $tm; } ?> ``` 直接使用**get_flv_file_time("你的FLV.flv")**即可。