0

データベースからすべてのキーワードをコンマで区切って取得し、それらから配列を作成してから、すべての配列をマージします。結果の配列から、一意のアイテムのみを保持しますarray_unique。問題は、結果の配列を値でソートできないことです。

これが私のコードです:

$select_all_keywords = mysqli_query($db_connect, "SELECT `keywords` FROM `bookmarks`") or die(mysqli_error());

$keywords_array = array();

while($keywords = mysqli_fetch_assoc($select_all_keywords))
{
    $explode_keywords = explode(", ", $keywords['keywords']);
    $keywords_array = array_merge($keywords_array, $explode_keywords);
}

$unique_keywords = array_unique($keywords_array);

sort($unique_keywords);

$unique_keywords = array_values($unique_keywords);

print_array($unique_keywords);

印刷された配列:

array(23) {
  [0]=>
  string(10) "Awolnation"
  [1]=>
  string(7) "Belgium"
  [2]=>
  string(7) "Gravity"
  [3]=>
  string(21) "Nervo (Musical Group)"
  [4]=>
  string(5) "R3..."
  [5]=>
  string(22) "R3hab (Musical Artist)"
  [6]=>
  string(5) "Remix"
  [7]=>
  string(4) "Sail"
  [8]=>
  string(30) "Tomorrowland (Recurring Event)"
  [9]=>
  string(21) "Tomorrowland Festival"
  [10]=>
  string(9) "Unlimited"
  [11]=>
  string(6) "dasdas"
  [12]=>
  string(10) "freshbooks"
  [13]=>
  string(11) "gdsfgdsfgds"
  [14]=>
  string(6) "mockup"
  [15]=>
  string(3) "php"
  [16]=>
  string(11) "programming"
  [17]=>
  string(10) "revolution"
  [18]=>
  string(17) "tomorrowland 2013"
  [19]=>
  string(11) "ummet ozcan"
  [20]=>
  string(10) "web design"
  [21]=>
  string(7) "wikihow"
  [22]=>
  string(3) "xml"
}

ほとんどすべてのソート配列関数を試しました。それらのどれも、値 ASC で配列をソートするのに役立ちませんでした。

4

1 に答える 1

2

asort() を探していると思います。配列を値でソートします。ただし、キーは同じままにしてください。

こちらのドキュメントをご覧ください。 http://php.net/manual/en/function.asort.php

于 2013-10-28T00:02:27.157 に答える