Оглавление
Введение в строки HeredocСинтаксис HeredocПрактическое применение HeredocСинтаксис NowdocИтог
Heredoc и Nowdoc в PHP
Введение в строки Heredoc
Когда вы помещаете переменные в строку с двойными кавычками, PHP автоматически подставляет их значения. Если строка содержит двойные кавычки, их нужно экранировать с помощью обратного слэша (
\).Пример с двойными кавычками:
Результат:
Строки heredoc ведут себя как строки с двойными кавычками, но без необходимости экранирования кавычек и с автоматическим подставлением переменных.
Пример с heredoc:
Синтаксис Heredoc
Синтаксис строки heredoc выглядит так:
Как это работает:
- Начинается с оператора
<<<, затем идёт идентификатор и новая строка. - Далее указывается сама строка, которая может занимать несколько строк и содержать любые кавычки.
- Строка завершается тем же идентификатором.
Правила для идентификатора:
- Может содержать только буквы, цифры и подчёркивания.
- Должен начинаться с буквы или подчёркивания.
- Завершающий идентификатор должен стоять в начале строки, без отступов, и за ним может идти только точка с запятой (
;). - Закрывающий идентификатор должен быть расположен отдельно на новой строке.
Пример ошибки:
Ошибка: Перед закрывающим идентификатором на новой строке есть символы табуляции.
Корректный пример:
Практическое применение Heredoc
heredoc удобно использовать для:
- Определения строк с кавычками и переменными.
- Генерации HTML-кода.
Пример генерации HTML:
Синтаксис Nowdoc
Строки nowdoc похожи на heredoc, но переменные в них не подставляются. Синтаксис отличается тем, что идентификатор после
<<< заключается в одинарные кавычки.Правила для идентификатора такие же, как у heredoc.
Итог
- Heredoc - аналог строк с двойными кавычками, без необходимости экранирования.
- Nowdoc - аналог строк с одинарными кавычками, без подстановки переменных.

