Ответ 1
Ваш Heredoc нуждается в небольшой модификации (потому что это фактически Nowdoc!):
echo <<<EX
<p>Game: {$data['game_name']}<br/>
the owner of the game is {$data['game_owner']}
</p>
EX;
- Идентификаторы Heredoc (в отличие от nowdoc) не могут быть указаны.
'EX'
должно статьEX
. -
Терминатор Heredoc не должен иметь предшествующих пробелов. Из документов:
Очень важно отметить, что строка с закрывающим идентификатором не должна содержать других символов, кроме, возможно, точки с запятой (;).
Вы запутываете Nowdoc с Heredoc.
- Сложные типы данных в строках должны быть окружены
{}
для их анализа в качестве переменных. Например,$data['game_name]
должен быть{$data['game_name]}
.
Вы смешиваете heredoc и nowdoc здесь. Вы хотите использовать Heredoc, а не Nowdoc, потому что у вас есть переменные внутри вашей строки. Heredocs - это "расширенные" строки с двойными кавычками, тогда как nowdocs более схожи с одной кавычкой, поскольку переменные не обрабатываются в nowdoc-строках, а находятся в heredoc.
Пожалуйста, внимательно ознакомьтесь с документацией.