2016-10-03 22 views
1

寫了一段代碼替換數組中的所有字符串,最後以逗號分隔的字符串輸出它們(如下所示)。php替換數組中的所有字符串,並輸出逗號分隔的字符串

雖然對於如此簡單的功能似乎有點多。所以我的問題是任何人都可以想出更優雅的寫作方式嗎?

$arr = array('first', 'second', 'third'); 
$size = count($arr); 
$newArr = array(); 

for($i=0; $i<$size; $i++) { 

    $newArr[$i] = str_replace($arr[$i], '?', $arr[$i]); 

} 

$final = implode(', ', $newArr); 

echo $final; 
+1

這個問題比Stack Overflow更適合[Code Review](http://codereview.stackexchange.com/)。 –

+0

代碼有點沒有意義嗎?我的意思是它總是用「?」替換所有的數組元素,因爲你傳遞'$ arr [$ i]'作爲針和輸入字符串。 – ShiraNai7

回答

1

str_replace()接受數組:

$newArr = str_replace($arr, '?', $arr); 
$final = implode(', ', $newArr); 

但我希望這是因爲你只是更換陣列中的任何東西只是一個例子嗎?這很容易完成。

+0

是的,謝謝! – Hezerac

+0

btw什麼是'更容易完成'? – Hezerac

1

的其他形式的代碼片段...

<?php 
     $arr = array('first', 'second', 'third'); 
     foreach ($arr as $item) { 
      $na[] = str_replace($item, '?', $item); 
     } 
     echo implode(', ', $na); 

希望幫助你!

相關問題