2017-01-30 4 views
0

skill_taggingという名前の列をエコーアウトして、スペースと句読記号を削除しています。しかし私がしようとしているのは、それらを削除/マージする重複を数えることです。各ループの複製数を数えてから削除する方法は?

出力例: アイテム(4)項目(15)項目(2)

<?php 

while ($row = $sql->fetch()) { 
    $skill_tagging = $row['skill_tagging']; 
    $count   = "???"; 
    if ($skill_tagging !== null) { 

     $chars = preg_quote('|/\.,:;_+', '/'); 
     $lines = preg_split('/[' . $chars . ']/', $skill_tagging); 

     foreach ($lines as $line) { 
      echo "<span class='tag_count'>" . $count . "</span><span value='$line' class='tag_item_search'>" . $line . "</span>"; 
     } 
    } else { 
    } 
} 
+0

ダビングをカウントするarray_diffを使用するarray_uniqueを使用することができます'$ line'のダブ? – JustOnUnderMillions

+0

'$ line'の重複 – bob

+2

ヒント:配列を扱っているなら、' array_count_values() 'と' array_unique() 'を使うことができます – JustOnUnderMillions

答えて

1

あなたは重複を削除し、それらに `$ row`の

+0

私はそれに慣れていません。私の要点は最も感謝していますか? – bob

+0

'$ skill_tagging = $ row ['skill_tagging']; $ skill_unique = array_unique($ skill_tagging); $ count = array_diff($ skill_tagging、$ skill_unique); ' –

+0

いいえ。それは動作しません。 – bob

関連する問題