Php перенос длинной строки

Как правильно сделать перенос строки на PHP: все способы

Тег br используется для вставки разрыва строки в HTML. Это пустой тег. Соответственно — у него отсутствует закрывающий тег и он ничего не переносит в плане контента. Сразу пример использования:

Это параграф.
Он состоит сразу из нескольких строк.

Примечание: в этом примере тег br используется для вставки разрыва строки между двумя предложениями, в результате чего второе предложение появляется на новой строке.

Зачем нужен

Тег br чаще всего применяется для разделения длинных строк текста или для разделения элементов в списке. Его также можно использовать и для добавления дополнительного пробела между строками текста.

br часто используется в сочетании с другими HTML-элементами, такими как p (абзац) или div (разделение), для структурирования содержимого веб-страницы.

Важно: тег br следует использовать только для добавления разрывов в HTML. Для создания других типов интервалов или иной компоновки страницы — нужно применять стили.

Тег br используется для добавления разрыва внутри блока текста, но не для начала нового абзаца.

Использование спецсимволов \n, \r, \r\n

Для создания новой строки внутри исходного хода можно применять спецсимволы \n или \r\n.

Важно: если нужно создать видимые на странице разрывы, лучше использовать nl2br() — эта функция вставляет HTML-код разрыва строки перед всеми новыми строками. Понять принцип этой функции проще всего на следующем примере:

 echo "В исходном тексте веб-страницы \r\n можно увидеть новую строчку в этой строчку"; 
echo "
";
echo nl2br("Вы увидете \n новых строчек в этой строчке\r\n..");
?>

Использование функции nl2br

Выше мы рассмотрели использование этой функции кратко. Давайте закрепим её, рассмотрев ещё несколько примеров.

Синтаксис функции имеет такой вид:

Запомнить: функция nl2br() вставляет разрывы перед всеми новыми строками. В качестве них могут выступать: \r, \r\n, \n, \n\r.

Изучение способов переноса принесет вам пользу в долгосрочной перспективе. Ну а чтобы пользы было ещё больше — успейте записаться на курс бэкенд-разработчик от Loft.

Функция принимает два параметра:

  • string. Входная строка. Обязательный.
  • is_xhtml. Может быть TRUE или FALSE. Указывает, стоит ли применять переводы строк, совместимые с XHTML. Опциональный.

Давайте посмотрим ещё один пример использования функции:

 echo nl2br("Привет, Миша!\r\nДобро пожаловать на сайт", false); 
?>
Привет, Миша! 
Добро пожаловать на сайт.

При открытии в браузере, в самом содержимом страницы, пользователь увидит:

Привет, Миша! Добро пожаловать на сайт.

Следующий пример. Он очень похож на предыдущий:

 echo nl2br("Привет, Миша!\nДобро пожаловать на сайт."); 
?>
Привет, Миша! 
Добро пожаловать на сайт.

При открытии в браузере, в самом содержимом страницы, пользователь увидит:

Привет, Миша! Добро пожаловать на сайт.

Тег, таким образом, не виден на странице (в её содержимом)

Универсальный перенос при помощи константы PHP_EOL

PHP_EOL — это предопределенная константа, которая помогает улучшить совместимость PHP-приложений с различными платформами.

Она автоматически выбирает символ конца строки, используемый в системе пользователя (на которой выполняется PHP).

В чем сложность

  • В операционных системах семейства Windows новая строка обозначается с помощью \r\n (так называемый возврат каретки или CRLF)
  • В операционных системах семейства в Linux и Mac для вышеуказанной цели задействован unix-подобный разделитель \n.

Чтобы улучшить совместимость с другими ОС не применяйте «\n» для создания новых строк

PHP_EOL можно использовать так же, как и \n:

echo 'Privet Misha' . PHP_EOL;

Примечание: поскольку такие переносы строк невидимы, мы использовали [LF], чтобы обозначить его (в том месте, где был выведен перенос).

Вывод. Какой метод правильнее будет использовать

Тег br — полезный инструмент для управления макетом и форматированием текста на веб-странице. Наравне с другими HTML-тегами ( p и div ) br применяется для создания, структурирования и форматирования видимого содержимого страницы.

Чтобы не запутаться в разных методах переноса — даем резюмирующую шпаргалку:

  • br / — это HTML-тег. Его задача вывести последующее содержимое с новой строки. Подойдет для выводимого на странице содержимого.
  • \r\n — стандартный перенос.
  • nl2br() — функция выполняется построчно и автоматически меняет все переносы строк на br/ .
  • PHP_EOL — пригодится, когда нужно обеспечить мультиплатформенность.

Хотите стать крутым и востребованным веб-разработчиком? У нас есть специализированный курс!

Источник

Формирование текста с использованием функции PHP wordwrap()

Иногда нужно, чтобы скрипт PHP формировал длинную строку в несколько коротких, сохраняя при этом целостность слов. Такая необходимость может возникнуть при форматировании некоего текста для печати или для email, или когда нужно вывести предварительно отформатированный текст на веб странице с помощью элемента pre .

PHP имеет практичную функцию wordwrap() для решения таких задач. В данном уроке рассматривается работа с функцией wordwrap() .

Основной синтаксис wordwrap()

В большинстве случаев нужно просто передать строку в функцию wordwrap() , и она вернёт сформированный текст:

$myString = "Mr. Bennet was so odd a mixture of quick parts, sarcastic humour, reserve, and caprice, that the experience of three-and-twenty years had been insufficient to make his wife understand his character."; echo "
" . wordwrap( $myString ) . "

";

Выше приведённый код выводит:

Mr. Bennet was so odd a mixture of quick parts, sarcastic humour, reserve, and caprice, that the experience of three-and-twenty years had been insufficient to make his wife understand his character.

По умолчанию функция wordwrap() использует ширину колонки в 75 символов. Это означает, что строка будет не длиннее 75 символов.

Задаём ширину колонки

Чтобы задать ширину колонки отличной от 75 символов, нужно передать значение ширины в качестве второго аргумента фунгкции wordwrap() :

$myString = "Mr. Bennet was so odd a mixture of quick parts, sarcastic humour, reserve, and caprice, that the experience of three-and-twenty years had been insufficient to make his wife understand his character."; echo "
" . wordwrap( $myString, 40 ) . "

";

Mr. Bennet was so odd a mixture of quick parts, sarcastic humour, reserve, and caprice, that the experience of three-and-twenty years had been insufficient to make his wife understand his character.

Используем другой символ переноса строки

Обычно функция wordwrap() выполняет перенос строки с помощью вставки символа новой строки ( «\n» ) там, где нужно. Однако, вы можете установить тот символ, который нужно использовать. Для этого новый символ переноса строки передаётся в качестве третьего аргумента функции wordwrap() .

Например, если текст формируется для использования на веб странице и элемент pre не будет использоваться для отображения предварительно форматированного текста, то можно осуществлять перенос строки с помощью элемента HTML
:

$myString = "Mr. Bennet was so odd a mixture of quick parts, sarcastic humour, reserve, and caprice, that the experience of three-and-twenty years had been insufficient to make his wife understand his character."; echo wordwrap( $myString, 40, "
" );

Формирование очень длинных слов

Что произойдёт, если текст будет содержать слово, длина которого превышает ширину колонки? По умолчанию строка будет иметь длину больше ширины колонки:

 myString = "This text contains a very very loooooooooooooooooooong word."; echo "
" . wordwrap( $myString, 10 ) . "

";

This text contains a very very loooooooooooooooooooong word.

Чтобы изменить стиль работы с длинными словами нужно передать четвёртым аргументом значение true в функцию wordwrap() . В этом случае все слова, длина которых будет превышать ширину колонки будут прерываться символом переноса строки, а остаток слова будет продолжаться на следующей строчке:

myString = "This text contains a very very loooooooooooooooooooong word."; echo "
" . wordwrap( $myString, 10, "\n", true ) . "

";

This text contains a very very looooooooo oooooooooo ong word.

Использование функции wordwrap() помогает формировать текст так, что его отображение имеет прогнозируемый вид, без сюрпризов.

Данный урок подготовлен для вас командой сайта ruseller.com
Источник урока: www.elated.com/articles/wrapping-text-php-wordwrap/
Перевел: Сергей Фастунов
Урок создан: 30 Июля 2010
Просмотров: 17130
Правила перепечатки

5 последних уроков рубрики «PHP»

Фильтрация данных с помощью zend-filter

Когда речь идёт о безопасности веб-сайта, то фраза «фильтруйте всё, экранируйте всё» всегда будет актуальна. Сегодня поговорим о фильтрации данных.

Контекстное экранирование с помощью zend-escaper

Обеспечение безопасности веб-сайта — это не только защита от SQL инъекций, но и протекция от межсайтового скриптинга (XSS), межсайтовой подделки запросов (CSRF) и от других видов атак. В частности, вам нужно очень осторожно подходить к формированию HTML, CSS и JavaScript кода.

Подключение Zend модулей к Expressive

Expressive 2 поддерживает возможность подключения других ZF компонент по специальной схеме. Не всем нравится данное решение. В этой статье мы расскажем как улучшили процесс подключение нескольких модулей.

Совет: отправка информации в Google Analytics через API

Предположим, что вам необходимо отправить какую-то информацию в Google Analytics из серверного скрипта. Как это сделать. Ответ в этой заметке.

Подборка PHP песочниц

Подборка из нескольких видов PHP песочниц. На некоторых вы в режиме online сможете потестить свой код, но есть так же решения, которые можно внедрить на свой сайт.

Источник

Читайте также:  Books on javascript and jquery
Оцените статью