PHP Longtext для отображения, как написал пользователь

Мне нужно знать, как отображать информацию, помещенную в поле длинного текста базы данных, так, как она была написана.

Например, если пользователь пишет в этом ниже:

My life is full of love I fly like
wedding doves I blow passed stop signs
That intersect with hate lines

-

I know what I am
I know who I be
If you can't accept me
Then don't friend me

Я хочу, чтобы он отображал текст из базы данных так же, как пользователь написал его в текстовой области, вместо того, чтобы отображать его в таком виде:

Моя жизнь полна любви, Я летаю, как свадебные голуби, Я сдуваю мимо Стоп Стрелки, которые пересекаются с линиями ненависти. Я знаю, кто я. Я знаю, кем я являюсь.

Как я могу это сделать в PHP для правильного отображения информации с помощью PHP?

4 ответа

Решение

Использование nl2br(), Преобразует разрывы строк (например, из текстовых полей) в HTML <br /> теги.

Если вы используете nl2br для данных, они должны отображаться примерно с тем же форматированием, что и в исходной текстовой области.

Тем не менее, я действительно рекомендую сначала прочитать о таких вещах, как обработка SQL-инъекций, экранирование и т. Д., Поскольку вы вполне можете настроить себя на некоторые проблемы межсайтового скриптинга (XSS), если не будете осторожны.

Если вы хотите отобразить предварительно отформатированный текст, заключите его в <pre></pre> теги

  <pre>...your text here...</pre>

Многим людям не нравится <pre> элемент, потому что он часто используется плохими разработчиками и дизайнерами, но это именно тот случай, для которого он должен использоваться.

Большинство браузеров отображают предварительно отформатированный текст иначе, чем обычный текст, поэтому вам, возможно, придется настроить таблицу стилей

body, pre {font-family: ...;font-size:....}

Я не могу подчеркнуть это достаточно: вы никогда не должны выводить сгенерированный пользователем контент, как он есть, но будьте осторожны, чтобы избежать всего текста, который вы выводите (см.: http://php.net/manual/en/function.htmlspecialchars.php),

Другие вопросы по тегам