求教php str_replace替换问题!

function Z($content){ //自定义替换
$content = str_replace("\n","<br>", str_replace(" "," ",$content));
return $content;
}

使用自定义替换后 数据库中只显示 前面字符 空格 和回车后面的不显示! 信任求指点

按道理来说,你的程序写得好像没什么错误,但是PHP毕竟不太成熟,你的这种函数嵌套式应用极容易出问题。

所以,像这种一次替换多种的情况,最好使用str_replace()所支持的数组替换方式:

$find_arr = array("\r", "\n", " ");
$replace_arr = array("<br/>", "<br/>", "&nbsp;");
$content = str_replace($find_arr, $replace_arr, $content);

如果这样还是无法解决你的问题,那说明问题出在其它地方了,并没在这里。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-06-13
你想把怎样的字符串替换呢?把什么替换掉这句话有问题str_replace("\n","<br>", str_replace(" "," ",$content))
有这种写法:str_replace(array("\r", "\n"), array('', ''), $string);追问

看php100 做留言板 替换空格和回车的

追答

你看下这个函数的用法str_replace();用数组的方式替换