Ответ 1
Попробуйте nl2br()
:
echo nl2br($str);
У меня есть текстовая форма в моем html. Если пользователь попадает между двумя предложениями, данные должны переноситься на мой PHP.
В настоящее время, если пользователь вводит:
Apple
Google
MS
и мой PHP-код:
$str = $_POST["field"];
echo $str;
Я получаю
Apple Google MS
в качестве вывода. Я хочу, чтобы результат был таким
Apple
Google
MS
что мне делать?
Попробуйте nl2br()
:
echo nl2br($str);
Новые строки должны быть включены в строку, полученную из $_POST["field"]
. Однако, если вы затем используете эту строку в качестве вывода в HTML, символы новой строки будут рассматриваться как пробельные символы. Чтобы заставить разрывы строк, используйте preg_replace("/\n/", "<br />", $str)
.
Это потому, что, когда вы эхо его, оно отображается как HTML. Символ \n
интерпретируется как пробел. Если вы просмотрите источник, вы увидите нужный результат.
Чтобы преобразовать \n
в <br>
, используйте:
echo nl2br( $str );