У меня есть массив тегов, которые я извлекаю из базы данных, я экспортирую теги в облако тегов. Я застрял на получении только первого экземпляра слова. Например:
$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);
}
}
}