データベースから取得しているタグの配列があり、タグをタグクラウドにエクスポートしています。私は単語の最初のインスタンスだけを取得することに固執しています。例えば:
$string = "test,test,tag,tag2,tag3";
$getTags = explode("," , $string);
foreach ($getTags as $tag ){
echo($tag);
}
これにより、テストタグが2回出力されます。最初、私stristr
は次のようなことをするために使用できると思いました:
foreach ($getTags as $tag ){
$tag= stristr($tag , $tag);
echo($tag);
}
これは明らかにばかげたロジックであり、機能しませんstristr
。最初のオカレンスを置き換えるだけのようです。したがって、「test123」のようなものは「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);
}
}
}