我有一个文本区域,允许用户输入多行文本。我想强制文本框中的所有内容自动双倍间隔。我使用nl2br输出文本并显示间距。
让我们说用户输入:
红色
蓝色
绿色
我想输出nl2br函数
红色
蓝色
绿色
我还需要能够处理双倍空格(例如,如果用户已经放入双倍间距,我不想要更多。
有关如何制作此产品的任何想法?我宁愿在允许用户输入文本的页面中执行此操作。谢谢!
答案 0 :(得分:3)
$str = 'red
blue
green';
$str = str_replace(PHP_EOL, '<br><br>', $str);
echo $str;
修改强> 使用正则表达式:
$str = 'red
blue
green
blue';
$str = preg_replace(array('/(\r?\n)+/', '/\r?\n/'),array(PHP_EOL,'<br><br>'), $str);
echo $str;
答案 1 :(得分:0)
$str = nl2br(str_replace(PHP_EOL, '<br><br>', $str));
echo $str;
答案 2 :(得分:0)
$str = str_replace('<br />', '<br /><br />', nl2br($str));
这将使<br />
个标记超出所有行结尾,然后加倍。