2013-05-15 21 views
10

我正從表中循環一個標題,所以它基本上就是沿着這些線條的東西。在同一個字符串上多次使用str_replace

foreach($c as $row){ 
    echo string_shorten($row['title']); 
} 

我在做什麼是試圖爲一個switch語句,將與我想它來搜索,一旦它發現我在str_replace函數選擇更換開關:

function string_shorten($text){ 
    switch(strpos($text, $pos) !== false){ 
     case "Hi": 
       return str_replace('Hi','Hello', $text); 
     break; 
    } 
} 

任何建議或可能的選擇將不勝感激。這感覺就像我真的很接近但不完全。

+1

str_replace()可以接受數組作爲從和參數 - http://www.php.net/manual/en/function.str- replace.php –

+0

並非所有的字符串都將以相同的方式替換。在一種情況下,一個詞正在被一個縮寫替換,另一個詞被完全刪除。 – stepquick

+1

你也可以替換一個數組 – PeeHaa

回答

44

正如可以在manual for str_replace()

混合str_replace讀(混合$search,混合$replace,混合$subject [摘要&$count])

以及這個例子中

// Provides: You should eat pizza, beer, and ice cream every day 
$phrase = "You should eat fruits, vegetables, and fiber every day."; 
$healthy = array("fruits", "vegetables", "fiber"); 
$yummy = array("pizza", "beer", "ice cream"); 

$newphrase = str_replace($healthy, $yummy, $phrase); 

這意味着您可以使用類似下面的

$search = array('Hi', 'Heyo', 'etc.'); 
$replace = array('Hello', 'Hello', ''); 
$str = str_replace($search, $replace, $str); 
+0

謝謝你的例子。 – stepquick

相關問題