2010-11-03 62 views
0

我有一個複選框列表,用於創建一個我想迭代的數組,以創建圖像文件名以及標題和alt標記。使用preg替換爲數組

$specs = get('speciesCommon'); 
$thepath = get_bloginfo('template_directory'); 
foreach($specs as $speci){ 
echo '<li><img src="'.$thepath.'/library/images/icons/species/'.$speci.'.gif" width="30" height="30" alt="'.$speci.'" title="'.$speci.'" /></li>' ; 
} 

因此,例如複選框值是灰熊熊那就填充此打印:

<img src=".../grizzly-bear.gif" title="grizzly-bear" alt="grizzly-bear" .../> 

我想剛纔的標題和alt標籤打印不帶連字符。我試過..

$speci = preg_replace('/-/','\s',$speci); 

但它沒有工作,然後我意識到圖像需要連字符,所以我不能這樣做反正。關於如何讓這種情況發生的任何想法?

回答

1

我會用str_replace這個簡單的替換。您還需要將結果放入新變量中,因爲您要同時使用舊值和新值。

foreach($specs as $speci){ 
    $speci_nohyphen = str_replace('-', ' ', $speci); 
    echo '<li><img src="', $thepath, '/library/images/icons/species/', $speci, '.gif" width="30" height="30" alt="', $speci_nohyphen, '" title="', $speci_nohyphen, '" /></li>'; 
} 
+0

完美!謝謝! – Zac 2010-11-03 07:10:05