2011-12-24 49 views
0

我想每個輸出後添加一個空格,但其僅出現在最後的輸出空間添加到每個陣列輸出

if ($en['mm_wmeet']) { 
    $tmp = explode(",", $en['mm_wmeet']); 
    for ($i = 0; $i < count($tmp); $i++) { 
     $en['mm_wmeet'] = $tmp[$i]. "&nbsp;"; 
    } 
} 
+2

您分配,而不是增加。使用'。='添加 – 2011-12-24 09:51:54

回答

4

最好的方法是str_replace()函數

$en['mm_wmeet'] = str_replace(',', '&nbsp;', $en['mm_wmeet']);  
5

正如佩卡說,使用.=

$tmp = explode(",", $en['mm_wmeet']); 
for ($i = 0; $i < count($tmp); $i++) { 
    $en['mm_wmeet'] .= $tmp[$i] . "&nbsp;"; 
} 

或者,使用implode

$tmp = explode(",", $en['mm_wmeet']); 
$en['mm_wmeet'] = implode("&nbsp;", $tmp); 
1

你正在做的事情的淨效果是隻是r E將逗號與空格,所以你可以使用PHP的內置功能str_replace

$en['mm_wmeet'] = str_replace(',', '&nbsp;', $en['mm_wmeet']); 

如果您的搜索字符串更復雜,你可以使用正則表達式來代替。

例如,如果你想也去掉列表項之間的任何現有的純白色的空間,你可以這樣做:

$en['mm_wmeet'] = preg_replace('/,\s*/', '&nbsp;', $en['mm_wmeet']); 

如果你真的想後,一個額外的尾部空間,只是追加了。