У меня есть текстовая форма в моем 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 );