使用标头时,PHP使用file_put_contents复制日志条目('Content-Type:audio / mpeg');

时间:2020-08-24 04:09:33

标签: php audio cross-browser mp3

我正在使用php来播放mp3文件。加载页面时,我一直遇到问题,它两次执行我的日志记录功能。这将导致日志中出现重复的条目。我简化了我的代码,以便在此处发布。

当我执行以下php文件时,它会在浏览器中完美播放“ test.mp3”。我的error_log中没有错误。

    <?php
header('Content-type: audio/mpeg');
header('X-Pad: avoid browser bug');
header('Cache-Control: no-cache');

print readfile("test.mp3");

$logentry = date("l jS \of F Y h:i:s A") . " Play Successful\n";

file_put_contents('play.log', $logentry, FILE_APPEND);
    
?> 

加载上面的php一次后查看我的play.log文件,我得到了:

Monday 24th of August 2020 03:57:10 AM Play Successful
Monday 24th of August 2020 03:57:10 AM Play Successful

重复的条目。 为了进一步隔离,我注释了“ header('Content-type:audio / mpeg');”行,然后网页按预期方式直观地加载二进制mp3文件(一堆随机字符)。当我检查日志文件时,我看到它做了一个应有的条目。

为什么使用“ header('Content-type:audio / mpeg');”的任何想法导致两次浸洗? 在Chrome和Edge中加载脚本时会发生这种情况。使用Safari,我得到了笔挺的条目。 IE浏览器我应该得到一个条目。

我如何才能使其在所有浏览器中可靠地运行以获取准确的日志?

0 个答案:

没有答案
相关问题