CakePHP дезинфицирует перевод строки \ n - PullRequest
0 голосов
/ 09 марта 2011

У меня есть поле для комментариев, и когда кто-то нажимает клавишу ввода, Cake помещает \ n (перевод строки) в базу данных.Когда я получаю это из БД, оно отображается как \ n вместо фактического разрыва или в HTML
.

Кажется, что нет никакой опции для обработки \ n, которую я не могу понять, потому что это обычное нажатие ввода в текстовой области.Что я делаю не так?

Спасибо, Крис

Ответы [ 3 ]

2 голосов
/ 13 марта 2011

вы забываете, что есть php-функции, охватывающие это :) nl2br () - это то, что вы ищете

echo nl2br(h($data));

ПРИМЕЧАНИЕ:

  • h ()по соображениям безопасности.всегда сначала используйте h (), чем nl2br ().

  • вам не нужен h (), если у вас есть html-контент.h () только для обычного текста.

  • СОВЕТ: вы даже можете улучшить свои шаблоны выпечки для автоматического его правильного отображения - подробности см. http://www.dereuromark.de/2010/06/22/cake-bake-custom-templates/

0 голосов
/ 23 ноября 2018

CakePHP имеет свой собственный метод для этого:

TextHelper::autoParagraph(string $text)

Проверьте документацию: https://book.cakephp.org/2.0/en/core-libraries/helpers/text.html

0 голосов
/ 24 декабря 2012

Вы также можете попробовать echo str_replace("\\n", "<br />", $variable);

...