DB_common::getAll() (Previous) (Next) DB_common::getCol()

View this page in Last updated: Sun, 20 Jul 2008
English | Dutch | French | German | Hungarian | Japanese | Polish | Russian | Spanish | Plain HTML

DB_common::getAssoc()

DB_common::getAssoc() -- クエリを実行し、結果を配列として返す

説明

指定したクエリを実行し、連想配列に結果セット全体を格納したあとで 結果セットを開放します。

結果セットにのカラム数が 2 つより多い場合は、2 番目のカラムから 最後のカラムまでの値の配列が、連想配列の値として返されます。 結果セットのカラム数が 2 つのみの場合は、2 番目のカラムの値を持つ スカラ値が、連想配列の値として返されます (パラメータ $force_array で、強制的に 配列を返すようにしている場合を除きます)。

パラメータ

string $query

SQL クエリあるいはプリペアドステートメント。

boolean $force_array

クエリが返すカラム数が 2 つの場合にのみ使用します。 TRUE を指定すると、返される結果がスカラではなく 要素がひとつの配列となります。

mixed $params

プリペアドステートメントに追加される、配列・文字列あるいは数値のデータ。 配列の要素数は、クエリ内のプレースホルダの数と同じでなければなりません。 配列以外を指定した場合はプレースホルダがひとつであることを意味し、 配列を指定した場合は配列の個々の要素がそれぞれのパラメータに対応します。

指定された場合は、 prepare()/ execute() が使用されます。

integer $fetchmode

使用するフェッチモード。 デフォルトは DB_FETCHMODE_DEFAULT で、 これは DB の現在のフェッチモードを使用します。 DB の現在のデフォルトフェッチモードを変更するには setFetchMode() を使用します。 フェッチモードには、以下の値が指定できます。

  • DB_FETCHMODE_ORDERED

  • DB_FETCHMODE_ASSOC

  • DB_FETCHMODE_OBJECT

boolean $group

TRUE の場合、返される連想配列の値がさらに別の配列の中に 組み込まれます。もし同一キー (最初のカラム) のデータが 繰り返し登場した場合は、その値が上書きされずに 配列に追記されていきます。

返り値

array - クエリ結果の連想配列、あるいは失敗した場合に DB_Error オブジェクトを返します。

注意

この関数は、スタティックにコールする ことはできません。

すべての例で、以下のデータセットを使用します。

INSERT INTO foo VALUES ('Juan', 5, '1991-01-11 21:31:41');
INSERT INTO foo VALUES ('Kyu', 10, '1992-02-12 22:32:42');
INSERT INTO foo VALUES ('Kyu', 15, '1993-03-13 23:33:43');

2 つのカラムを持つ結果セット

2 つのカラムを持つ結果セットに対して $force_array = FALSE (デフォルト) で getAssoc() を使用する場合は、 $fetchmode を変更しても結果の配列の 形式には影響しません。

2 つより多くのカラムを持つ結果セット

DB_common::getAll() (Previous) (Next) DB_common::getCol()

Download Documentation Last updated: Sun, 20 Jul 2008
Do you think that something on this page is wrong? Please file a bug report or add a note.
User Notes:
There are no user contributed notes for this page.