CKeditor删除额​​外的空格

时间:2014-07-04 17:58:51

标签: php ckeditor

我正在使用CKeditor作为文本编辑器,它不会删除额外的空格。

我试过

$foo = strip_tags($foo);
$foo = preg_replace('/\s+/',' ',$foo);

我不知道从这里删除空格的任何其他方法。有什么想法吗?

由于

编辑: 解决了 如果有人好奇,我通过在进入数据库之前清理它来解决这个问题。

  $cpbody = trim($_POST['cbody']);

  $cpbody = preg_replace("/\<p\>\&nbsp\;\<\/p\>/", "", $cpbody);
  $cpbody = preg_replace("/\&nbsp\;+/", " ", $cpbody);
  $cpbody = preg_replace("/\s+/", " ", $cpbody);

  $cpbody = htmlentities($cpbody);

2 个答案:

答案 0 :(得分:2)

试试这些:

$foo = preg_replace('/\s{2,}/', ' ', $foo);

$foo = preg_replace('/( )+/', ' ', $foo);

或者这个也删除了换行符

$foo = trim(preg_replace('/[\s\t\n\r\s]+/', ' ', $foo))

更新

试试这个:

$foo = trim(preg_replace('/(&nbsp;)+|\s\K\s+/','',$foo));

答案 1 :(得分:0)

解决如果有人好奇,我在进入数据库之前通过清理它来解决这个问题。

  $cpbody = trim($_POST['cbody']);

  $cpbody = preg_replace("/\<p\>\&nbsp\;\<\/p\>/", "", $cpbody);
  $cpbody = preg_replace("/\&nbsp\;+/", " ", $cpbody);
  $cpbody = preg_replace("/\s+/", " ", $cpbody);

  $cpbody = htmlentities($cpbody);