我有一個標籤數組,我從數據庫中提取,我將標籤導出到標籤雲中。我被困在獲得這個詞的第一個例子。例如:php只從數組中獲得單詞的第一次出現
$string = "test,test,tag,tag2,tag3";
$getTags = explode("," , $string);
foreach ($getTags as $tag){
echo($tag);
}
這會輸出測試標籤兩次。起初,我以爲我可以使用stristr
做這樣的事情:
foreach ($getTags as $tag){
$tag= stristr($tag , $tag);
echo($tag);
}
這顯然是愚蠢的邏輯並不起作用,stristr
似乎只替換第一次出現這樣類似「測試123」只會擺脫的「測試」,並會返回「123」我見過這也可以用正則表達式完成,但我還沒有找到一個動態的例子。
感謝,
布魯克
編輯:unique_array()
作品,如果我用一個靜態的字符串,但不會與數據從數據庫中工作,因爲我使用一個while循環來獲取每個行數據。
$getTag_data = mysql_query("SELECT tags FROM `news_data`");
if ($getTag_data)
{
while ($rowTags = mysql_fetch_assoc($getTag_data))
{
$getTags = array_unique(explode("," , $rowTags['tags']));
foreach ($getTags as $tag){
echo ($tag);
}
}
}
謝謝你的工作,我不得不在'foreach'循環中添加'$ t = trim($ t);'將key設置爲「test」與「test」不同。謝謝您的幫助! – BandonRandon 2009-11-26 00:27:49