我希望能够播放所有的音频文件在我的数据库通过嵌入源在播放器。
我已经创建了一个sql查询,它将返回一个包含我所有mp3名称的数组。
然后使用while循环
while($row = mysqli_fetch_array($result)) {
$sourcefile=$row['location'];
echo '<audio controls>';
echo '<source src="$sourcefile" type="audio/mpeg">';
echo "$sourcefile";
echo '</audio>';
}
生成以下html:
<audio controls>
<source src="$sourcefile" type"audio/mpeg">
</audio>
如果我显式地将音频标记中的$sourcefile替换为songname.mp3,它就可以正常工作。
为了确保php变量得到正确的值,我使用了echo语句来查看它包含的值,它确实是songname.mp3.
可能出什么事了?
变量替换只发生在双引号字符串中,而不是单引号字符串中。改变:
echo "<source src='$sourcefile' type='audio/mpeg'>";
你可以试试:
echo "<source src='{$sourcefile}' type='audio/mpeg'>";
或:
<source src="<?php echo $sourcefile; ?>" type="audio/mpeg">
记住 (HTML &PHP)没有标签时不要混合:)