Как правильно сделать перенос строки на PHP: все способы
Использование HTML-тега br
Тег br
используется для вставки разрыва строки в HTML. Это пустой тег. Соответственно — у него отсутствует закрывающий тег и он ничего не переносит в плане контента. Сразу пример использования:
<p>Это параграф.<br>Он состоит сразу из нескольких строк.</p>
Примечание: в этом примере тег br
используется для вставки разрыва строки между двумя предложениями, в результате чего второе предложение появляется на новой строке.
Зачем нужен
Тег br
чаще всего применяется для разделения длинных строк текста или для разделения элементов в списке. Его также можно использовать и для добавления дополнительного пробела между строками текста.
br
часто используется в сочетании с другими HTML-элементами, такими как p
(абзац) или div
(разделение), для структурирования содержимого веб-страницы.
Важно: тег br
следует использовать только для добавления разрывов в HTML. Для создания других типов интервалов или иной компоновки страницы — нужно применять стили.
Тег br
используется для добавления разрыва внутри блока текста, но не для начала нового абзаца.
Использование спецсимволов \n, \r, \r\n
Для создания новой строки внутри исходного хода можно применять спецсимволы \n или \r\n.
Важно: если нужно создать видимые на странице разрывы, лучше использовать nl2br() — эта функция вставляет HTML-код разрыва строки перед всеми новыми строками. Понять принцип этой функции проще всего на следующем примере:
<?php
echo "В исходном тексте веб-страницы \r\n можно увидеть новую строчку в этой строчку";
echo "<br>";
echo nl2br("Вы увидете \n новых строчек в этой строчке\r\n..");
?>
Использование функции nl2br
Выше мы рассмотрели использование этой функции кратко. Давайте закрепим её, рассмотрев ещё несколько примеров.
Синтаксис функции имеет такой вид:
nl2br(string, is_xhtml);
Запомнить: функция nl2br() вставляет разрывы перед всеми новыми строками. В качестве них могут выступать: \r, \r\n, \n, \n\r.
Изучение способов переноса принесет вам пользу в долгосрочной перспективе. Ну а чтобы пользы было ещё больше — успейте записаться на курс бэкенд-разработчик от Loft.
Функция принимает два параметра:
-
string. Входная строка. Обязательный.
-
is_xhtml. Может быть TRUE или FALSE. Указывает, стоит ли применять переводы строк, совместимые с XHTML. Опциональный.
Давайте посмотрим ещё один пример использования функции:
<?php
echo nl2br("Привет, Миша!\r\nДобро пожаловать на сайт", false);
?>
Вывод:
Привет, Миша!<br>
Добро пожаловать на сайт.
При открытии в браузере, в самом содержимом страницы, пользователь увидит:
Привет, Миша!
Добро пожаловать на сайт.
Следующий пример. Он очень похож на предыдущий:
<?php
echo nl2br("Привет, Миша!\nДобро пожаловать на сайт.");
?>
Вывод:
Привет, Миша!<br />
Добро пожаловать на сайт.
При открытии в браузере, в самом содержимом страницы, пользователь увидит:
Привет, Миша!
Добро пожаловать на сайт.
Тег, таким образом, не виден на странице (в её содержимом)
Универсальный перенос при помощи константы PHP_EOL
PHP_EOL — это предопределенная константа, которая помогает улучшить совместимость PHP-приложений с различными платформами.
Она автоматически выбирает символ конца строки, используемый в системе пользователя (на которой выполняется PHP).
В чем сложность
Их две:
-
В операционных системах семейства Windows новая строка обозначается с помощью \r\n (так называемый возврат каретки или CRLF)
-
В операционных системах семейства в Linux и Mac для вышеуказанной цели задействован unix-подобный разделитель \n.
Чтобы улучшить совместимость с другими ОС не применяйте "\n" для создания новых строк
PHP_EOL можно использовать так же, как и \n:
echo 'Privet Misha' . PHP_EOL;
Вывод:
Privet Misha
[LF]
Примечание: поскольку такие переносы строк невидимы, мы использовали [LF], чтобы обозначить его (в том месте, где был выведен перенос).
Вывод. Какой метод правильнее будет использовать
Тег br
— полезный инструмент для управления макетом и форматированием текста на веб-странице. Наравне с другими HTML-тегами (p
и div
) br
применяется для создания, структурирования и форматирования видимого содержимого страницы.
Чтобы не запутаться в разных методах переноса — даем резюмирующую шпаргалку:
-
br /
— это HTML-тег. Его задача вывести последующее содержимое с новой строки. Подойдет для выводимого на странице содержимого. -
\r\n
— стандартный перенос. -
nl2br()
— функция выполняется построчно и автоматически меняет все переносы строк наbr/
. -
PHP_EOL
— пригодится, когда нужно обеспечить мультиплатформенность.
Хотите стать крутым и востребованным веб-разработчиком? У нас есть специализированный курс!