0

次のようなエントリを含むテーブルがあります。

123 (DVD)

123 [DVD] [2007]

125 [2009]

189 (CD)

これらをオートコンプリート フィールドでユーザーに提示するとき、() または [] の間のいずれかは関係ないため削除しますが、上記のリストからわかるように、123 の 2 つのエントリが表示されます。ドロップダウンで...重複をさらに抑制する方法はありますか? 控えめに言っても間違っているように見える 5 つまたは 6 つのものがある場合があります。以下のコード:

    // db select
    $query = "SELECT $title FROM PRprodINFO2 WHERE ((prodcatID = '$cat_id') AND ($title LIKE \"%" . $_GET["q"] . "%\")) group by $title LIMIT 8"; 

$result = mysql_query($query);

$output_items = array();

// while loop to print results
    while($row = mysql_fetch_array($result)) { $output_items[] = $row[$title]; } 

$output_items = preg_replace('/\[.*?\]|\s*/', '', $output_items); // remove [blah]

$output_items = preg_replace('/\(.*?\)|\s*/', '', $output_items); // remove (blah)

    print(implode("\n", $output_items));

どうもありがとう

4

2 に答える 2

1

このarray_unique()関数は、配列 (あなたの場合は配列) から重複した値を削除します$output_items

http://php.net/manual/en/function.array-unique.phpをご覧ください。

于 2011-12-05T16:41:57.350 に答える
0

array_unique ( array $array )内破する前にすべての重複を削除するために使用できます。

于 2011-12-05T16:42:22.027 に答える