从外部web目录php附加媒体文件


Attaching media file from outside web directory php

是否有办法在php中附加这样的媒体文件?

$handle = fopen("/var/record/rec1.wav", "wb");
echo "<embed src ='"$handle'" hidden='"true'" autostart='"true'"></embed>";

理论上,您可以将其编码为数据uri,但这意味着要处理浏览器支持问题,并且每次加载HTML文档时都必须重新加载整个媒体文件,而不是单独缓存它们。

$path = "/var/record/rec1.wav";
$data = base64_encode(file_get_contents($path));
$uri = 'data:audio/x-wav;base64,'.$data;
?>
<embed src="<?php echo htmlspecialchars($uri); ?>" 
       hidden="true" 
       autostart="true">
</embed>

你最好直接通过HTTP公开文件。