0

この配列の形式を別の配列と一致するように変更したいと思います。1つはデータベースから取得され、もう1つはスペースが制限されたユーザー入力を使用して作成されてからexplode()が作成されました。

これが私が変更したい配列です。これはデータベース(mysql_fetch_array)からのものです。すべての行から単一のフィールドを取得します。

配列([名前] =>ダニエル)

配列([名前] => alex)

配列([名前] =>リチャード)

そして、これが私がそれをどのように見せたいかです。これは、ユーザーが送信した値の出力であり、スペースが制限され、PHPのexplode()関数が使用されています。

配列([0] => daniel [1] => alex [2] => david)

私がやりたいのは、これらを同じ形式にして、2つを比較できるようにすることです。最終的な目標は、2つの配列(ユーザー入力とデータベースの結果)を比較し、データベースにまだ含まれていない、ユーザーが入力した値のみを含む最終的な配列を作成できるようにすることです。

したがって、上記のデータを使用すると、これが私の最終的な配列になります。

配列([0] => david)

私は最初のビットで本当に助けていただければ幸いです、そして誰かが最終目標を達成するためのより良い方法を持っているなら、それは素晴らしい追加のボーナスになるでしょう!(SQLクエリを使用するとこれを行う方が簡単かもしれないと感じますが、これらの配列とは本当に混乱しています)

ありがとう!

4

1 に答える 1

1
array_diff($user_array, $database_array);

$database_array次のように作成できます。

$database_array = array();
//assuming each db record has only one value
//while there are still results in the db, do:
    $database_array[] = reset($fetched_record);

を参照してくださいarray_diff

于 2010-08-06T17:44:11.557 に答える