При работе в IDE над различными проектами, у меня часто возникает желание сделать так, чтобы большой кусок HTML-кода, который я планирую поместить в переменную, подсвечивался IDE как обычный HTML-код. Нет проблем, если закрыть зону PHP тэгом ?> и потом писать HTML-код. Тогда он будет подсвечиваться. Но такой код будет однозначно сразу выводиться, а вот затолкнуть его в переменную уже не получится — PHP будет игнорировать ?> и <?php внутри строки. Можете попробовать сами.
И вот как я обошёл это.
Как бы я ни пытался запихнуть подсвечиваемый HTML в переменную, это не удавалось. Тогда я решил дать возможность PHP вывести этот HTML в поток, но поток я перед этим перенаправил в буфер с помощью функции ob_start(). И после «вывода» в поток я просто забираю буфер в переменную. Вот так легко и просто.
Привожу пример кода, чтобы всем было понятно.
На этом всё, всем успехов! Программируйте правильно!
Большим кускам HTML кода в PHP скриптах не место. Они должны храниться в шаблонах.
Спора нет, но такая «махинация» может потребоваться в том числе внутри шаблона (например, в WordPress нативные шаблоны представляют собой обычные PHP файлы).