Я стараюсь избегать задавать глупые вопросы, но по какой-то причине это просто не работает. Я извлекаю некоторый текст из базы данных, включая новые строки. При использовании эхо сразу, это выход:не может заменить n в php содержимым из базы данных
=== BOLD TEXT ===\nHere is some text.
Это, как я извлечь его:
$row = $query->row();
$content=$row->course_content;
Ни один из следующих иметь какой-либо эффект .....
$content= str_replace(array("\r\n", "\r", "\n"), "<br />", $content);
$content= str_replace("\n", " ", $content);
$content = nl2br($content);
ОДНАКО, когда я жестко кодирую его в строке к исходному заявлению,
$content="=== BOLD TEXT ===\nHere is some text.";
pang! он работает ... любые идеи относительно того, почему он отказывается принять ввод базы данных, но в порядке с ручной строкой?
Полный код:
//Switch between these two:
$row = $query->row();
$content=$row->course_content;
$content="=== BOLD TEXT ===\nHere is some text.";
$content = str_replace(array("\r\n", "\r", "\n"), "<br />", $content);
$content = str_replace("\n", " ", $content);
$content = nl2br($content);
echo $content;
Каков тип переменной 'course_content' в вашей базе данных? – christopher
Это длинный текст \t с utf8_general_ci Может ли это быть проблемой? – MaxQ
Вы пытались преобразовать его в обычную старую строку и посмотреть, что произойдет? Поскольку PHP свободно набирается, иногда сложно отслеживать типы, которые перемещаются по коду. – christopher