У меня есть текстовая форма в моем 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
в использование:
echo nl2br( $str );