PHP中没有从字符串中删除换行符


Newline not remove from string in PHP

我有一个Zend表单,该描述字段是textarea元素。

我用换行符(ENTER)填充描述textarea并发布该表单。在数据库中保存数据时,我试图删除换行符,因为我必须将其存储在数据库中以供Json使用。如果我不删除换行符,那么json就不能正确解码。

所以经过大量的R&D我知道JSON不支持多行字符串。

我试过

<!-- language: php -->
$string = str_replace("'n", "", $string);
$string = str_replace("'r", "", $string);
$string = preg_replace('/[ 't]+/',  ' ', $string);

如果我通过接收temp变量来检查上面的解决方案,它可以正常工作,但不能处理Zend表单的post数据。

我已经尝试了下面的解决方案,它可以很好地进行

$val = array("'n","'r");
$string = str_replace($val, "", $string);