0

我有一个不知道如何解决的问题。本质上,我的表单上有一个文本区域,允许用户以这种格式输入数据:

Windows XP Home and Professional<br />(32 and 64 bit)

Windows 7 Home and Professional<br />(32 and 64 bit)

我可以将它插入我的数据库并在 PHP 中使用 nl2br 毫无问题地检索/显示它。但是,我需要使用一些 HTML 来格式化输出。我基本上需要输出在 HTML 中看起来像这样:

<p class="smallText">Windows XP Home and Professional<br />(32 and 64 bit)</p>
<p class="smallText">Windows 7 Home and Professional<br />(32 and 64 bit)</p>

本质上,当只有一次退货时,我需要 nl2br 为我处理的 br 标签。但是在有双重返回的地方,我需要将 br 转换为开始和结束 p。

我真诚地感谢有人能提供的任何见解!谢谢!

4

1 回答 1

0

假设文本输入正确,并且您用作段落指示符的两个换行符之间没有多余的空格/空格:

$txt = "Windows blah blah blah \n\n blah blah 64 bit)";
$nlbr = nl2br($txt);
$fixed = str_replace("<br /><br />", "</p><p>", $nlbr);
echo "<p>$fixed</p>";
于 2012-11-30T15:32:50.950 回答