У меня есть аудиоплеер, нормально работающий в HTML, но когда я вызываю его из эха PHP, кажется, что он не получает имя идентификатора div, поэтому он не воспроизводит мой звук. Вот мой код:
// Show audio
if ($sObj->get('audio') != null) {
$sAudio = $sObj->get('audio');
$audioURL = $sAudio->getURL();
$playerName = 'player';
echo '
<audio id = "player" ontimeupdate = "updateTime()" src = "'.$audioURL.'"></audio>
<a class = "btn btn-primary btn-round" id = "songPlay" onclick = "play('.$playerName.')"> --> THE ISSUE SEEMS TO BE HERE...
<i class = "fa fa-play"></i></a>
<a class = "btn btn-primary btn-round" id = "songPause" onclick = "pause()"><i class = "fa fa-pause"></i></a>
<a class = "btn btn-primary btn-round" id = "songStop" onclick = "stopSong()"><i class = "fa fa-stop"></i></a>
<div id = "songTime"><strong>0:00 / 0:00</strong></div>
<div id = "songSlider" onclick = "setSongPosition(this,event)"><div id = "trackProgress"></div></div>
';
}
По какой-то причине проигрыватель не воспроизводит мой звук, URL-адрес звука правильный, потому что, если я использую тот же звуковой тег и код в файле HTML, он работает отлично.
Что я делаю не так в PHP?
Спасибо!



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Строки PHP не являются многострочными. Это означает, что вы не можете просто вставить новую строку.
Вы должны использовать синтаксис Heredoc:
$str = <<<STR1
line1
line2
line3
...
STR1;
Или вы можете разделить строки с помощью "\n":
$str =
"line1\n" .
"line2\n" .
"line3";
Вы все еще можете интерполировать переменные:
echo <<<HTML
<audio id = "player" ontimeupdate = "updateTime()" src = "$audioURL"></audio>
<a class = "btn btn-primary btn-round" id = "songPlay" onclick = "play('$playerName')"><i class = "fa fa-play"></i></a>
<a class = "btn btn-primary btn-round" id = "songPause" onclick = "pause()"><i class = "fa fa-pause"></i></a>
<a class = "btn btn-primary btn-round" id = "songStop" onclick = "stopSong()"><i class = "fa fa-stop"></i></a>
<div id = "songTime"><strong>0:00 / 0:00</strong></div>
<div id = "songSlider" onclick = "setSongPosition(this,event)">
<div id = "trackProgress"></div>
</div>
HTML;