我有一组从数据库中提取的标签,我正在将标签导出到标签云中。我坚持只获得这个词的第一个实例。例如:
$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
似乎只替换了第一次出现,所以像“test 123”这样的东西只会摆脱“test”并返回“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);
}
}
}