2

我遇到了<BR />标签出现在预先填充的文本区域表单中的问题(显然没有中断)。所以这些break标签需要转换到/ntextarea内。正在通过 URL 检索此预填充文本,该 URL 似乎也包含中断标记。

基本上发生了什么以及我需要什么:

我必须从前一页(最初是从数据库中提取)中获取一块文本,并将该文本块加载到表单提交页面上的 textarea 字段中。用户然后填写表单字段的其余部分并提交表单,然后此信息将存储到数据库中的特定表中。

为了让文本块在第一页上正确显示,我不得不使用nl2br让这部分在页面上正确中断。显然,现在它正在输出带有换行符而不是换行符的文本。

这意味着当您单击链接以填充下一页上的表单时,该链接中包含中断标记,这些标记依次显示在下一页的 textarea 字段内以及 URL 中。

我对我需要做些什么来再次替换那些<BR />'s感到困惑/n。似乎我可以使用str_replaceor preg_replace,但我还没有找到如何将其中任何一个与以下内容结合使用的示例:

<textarea rows="10" cols="50"><? if(isset($_GET['text-property'])){ echo $_GET['text-property']; }?></textarea>

请记住,我仍在学习 PHP 的过程中,所以如果可能的话,我真的需要细节,最好是示例。

谢谢!

4

1 回答 1

1

你需要使用preg_replace

<textarea rows="10" cols="50"><? if(isset($_GET['text-property'])){ echo preg_replace('/<br[^>]*?>/si', '\n',$_GET['text-property']); }?></textarea>

演示

于 2012-11-12T21:33:06.567 回答