Итак, у меня были абзацы, отображающие нормально, когда вытащил из базы данных.
Используя CSS у меня была строка …
white-space: pre-line;
Новые строки для абзацев отображались великолепно.
Но затем я добавил код, чтобы первая буква каждого предложения была заглавной.
Код …
$description = htmlentities(strip_tags($_POST['desc']), ENT_QUOTES);
$desc = preg_replace_callback('/([.!?])\s*(\w)/', function ($matches) {
return strtoupper($matches[1] . ' ' . $matches[2]);
}, ucfirst(strtolower($description)));
Поэтому, хотя это сработало, теперь оно не отображает новые строки для новых абзацев. Другими словами, это игнорирование строки CSS выше или что-то в этом роде.
Есть идеи??
Это не игнорирование CSS, новой строки больше нет.
Смотрите, вы соответствуете, что вы хотите правильно, но вы заменяете без новая строка символов первой ([.!?])
а второй (\w)
группы выражения.
Измените выражение на ‘/([.!?])(\s*)(\w)/’, затем оператор return на strtoupper($matches[1] . $matches[2] . $matches[3])
Он должен работать.
Других решений пока нет …