我想删除多个空格。
效果很好:
$test = array('bla bla blaa ', 'eee asdasd lorem mmmm asdasd asdd ss');
foreach($test as $item) {
echo preg_replace('/\s+/', ' ', $item)."\n";
}
但是当我制作Joomla 3.2
插件时,我会爆炸文章内容(新行),
它不起作用,我不知道为什么。
$string = explode("\n", $text); // art content
foreach($string as $item) {
echo preg_replace('/\s+/', ' ', $item)."\n"
}
编辑调试:
它不起作用......
$string = explode("\n", $text);
foreach($string as $item) {
var_dump($item);
echo preg_replace('/\s+/', ' ', $item)."\n";
}
返回
string(53) "<p>ballll asf aikasifn asf </p>
"
<p>ballll asf aikasifn asf </p>
string(58) "<p>lorem i psdfaufma asfasf</p> "
<p>lorem i psdfaufma asfasf</p>
答案 0 :(得分:0)
您可能希望使用 2或更多来正确匹配替换。
echo preg_replace('/\s{2,}/', '', $item)."\n"
<强>更新强>
$text = <<<EOF
<p>ballll asf aikasifn asf </p>
<p>ballll asf aikasifn asf </p>
EOF;
$string = explode("\n", $text);
foreach($string as $item) {
//var_dump($item);
echo preg_replace('/\s+/', ' ', $item)."\n";
}
产地:
macbook-pro:Desktop allendar$ php -f test.php
<p>ballll asf aikasifn asf </p>
<p>ballll asf aikasifn asf </p>