我有一个带有文本区域的表单,我想将输入中的换行符更改为段落(使用<p>
标签)。我正在使用爆炸和内爆来替换\n
with </p><p>
,但是如果你连续有两个换行符,你最终会得到</p><p></p><p>
。我试图使用 foreach 循环来遍历每个元素并检查它是否为空来解决这个问题,但它似乎根本不起作用。这是我所拥有的:
foreach($text as $value){
if($value!=''){
$newtext.='</p><p>'.$value;
}
}
那仍然给</p><p></p><p>
对于双倍行距的东西。我也尝试更换if($value!='')
with !is_null(trim($value))
但它仍然不起作用。我的代码有什么问题,我该如何修复它?
像这样的事情会起作用:
$newtext = '<p>' . implode('</p><p>', array_filter(explode("\n", $textarea))) . '</p>';
- 通过换行符分割创建数组
\n
- 过滤掉空元素
- 一起加入
p
tags
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)