Как преобразовать новую строку и br в тег абзаца

Мой клиент использует старую CMS, и его база данных содержит записи в блогах, которые использовали nl2br () на внешнем интерфейсе, чтобы создать иллюзию между абзацами.

На бэкэнде есть простая текстовая область, которая позволяет вам добавлять текст.

Так, например, если вы добавите это:

First line<br>
Second line<br>
Third line<br>

Это отображает это на веб-интерфейсе

First line

Second line

Third line

Как я могу искать этот шаблон с preg_replace, чтобы я мог сделать его более похожим на это в базе данных

<p>First line</p>
<p>Second line</p>
<p>Third line</p>

Спасибо за любую помощь, вы можете предоставить!

1

Решение

Вот пример PHP, который должен делать то, что вы ищете.

<?php
$string = <<<STRING
First line<br>
Second line<br>
Third line<br>
STRING;

$output = preg_replace("/^(.*)<br.*\/?>/m", '<p>$1</p>', $string);

echo $output;
?>

Выход получается как:

<p>First line</p>
<p>Second line</p>
<p>Third line</p>

Вот регулярное выражение, если вы хотите поиграть с ним: https://regex101.com/r/zY6zO9/1

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]