Подсветка синтаксиса в значении строковой переменной

При работе в IDE над различными проектами, у меня часто возникает желание сделать так, чтобы большой кусок HTML-кода, который я планирую поместить в переменную, подсвечивался IDE как обычный HTML-код. Нет проблем, если закрыть зону PHP тэгом ?> и потом писать HTML-код. Тогда он будет подсвечиваться. Но такой код будет однозначно сразу выводиться, а вот затолкнуть его в переменную уже не получится — PHP будет игнорировать ?> и <?php внутри строки. Можете попробовать сами.

E20130908-011951-001[1]

И вот как я обошёл это.

Как бы я ни пытался запихнуть подсвечиваемый HTML в переменную, это не удавалось. Тогда я решил дать возможность PHP вывести этот HTML в поток, но поток я перед этим перенаправил в буфер с помощью функции ob_start(). И после «вывода» в поток я просто забираю буфер в переменную. Вот так легко и просто.

Привожу пример кода, чтобы всем было понятно.

E20130908-012605-001[1]

На этом всё, всем успехов! Программируйте правильно!

2
Отправить ответ

avatar
1 Цепочка комментария
1 Ответы по цепочке
0 Последователи
 
Популярнейший комментарий
Цепочка актуального комментария
1 Авторы комментариев
АлексейЧелябинский Метеорит Авторы недавних комментариев
  Подписаться  
новее старее большинство голосов
Уведомление о
Челябинский Метеорит
Гость

Большим кускам HTML кода в PHP скриптах не место. Они должны храниться в шаблонах.

Алексей
Гость

Спора нет, но такая «махинация» может потребоваться в том числе внутри шаблона (например, в WordPress нативные шаблоны представляют собой обычные PHP файлы).