我的问题很简单:如何使用可搜索的 PHP 输出 mp3?我相信我设置了适当的标头,并且我已经尝试使用 readfile() 和 fopen(),因为我的研究使我相信 readfile() 不支持字节范围而 fopen() 支持。但是,我真的不明白如何使用或设置字节范围,只是我显然需要这样做。我正在通过 jPlayer 播放歌曲,歌曲播放良好,但无法搜索。换句话说,您不能通过单击搜索栏上的不同位置来跳过歌曲。
这是输出 mp3 文件的代码:
header("Pragma: public"); // required
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: private", false); // required for certain browsers
header("Content-Type: audio/mpeg, audio/x-mpeg, audio/x-mpeg-3, audio/mpeg3");
header("Content-Disposition: inline; filename=" . $file . ";" );
header("Content-Transfer-Encoding: binary");
header("Content-Length: " . filesize($path));
//readfile("$path");
$music = fopen($path, 'r');
fseek($music, 0);
fpassthru($music);
exit();
如果我需要阅读 Range 标头,我该怎么做?