我有一个带有a的表单,我想在服务器端捕获该textarea中的任何换行符,并用a替换它们
.
那可能吗?
我试着设置white-space:pre
上textarea
的CSS,但它仍然是不够的.
看看这个nl2br()
功能.它应该完全符合你的要求.
nl2br()
存在这样的函数:
但是,这个函数添加了br标签,但实际上并没有删除新行 - 这通常不是问题,但如果你想完全剥离它们并捕获回车,你应该使用一个str_replace
或者preg_replace
我认为str_replace会稍微快点但我还没有基准测试;
$val = str_replace( array("\n","\r","\r\n"), '
', $val );
要么
$val = preg_replace( "#\n|\r|\r\n#", '
', $val );
如果您打算使用str_replace
或者preg_replace
,您应该将数据放在"\r\n"
数组的开头,否则\r\n
序列将被转换为两个
标记(因为\r
将匹配,然后\n
匹配).
例如:
$val = str_replace( array("\r\n", "\n","\r"), '
', $val );
要么
$val = preg_replace( "#\r\n|\n|\r#", '
', $val );