ingres_fetch_array

(PHP 4 >= 4.0.2, PHP 5 <= 5.0.4)

ingres_fetch_array -- 1 行分の結果を配列に取得する

説明

array ingres_fetch_array ( [int result_type [, resource link]] )

ingres_fetch_array() は、取得したレコード(行)に 対応する配列を返します。レコードがもうない場合は FALSE を返します。

この関数は、ingres_fetch_row() の拡張版です。 結果として返される配列の数値添字にデータを保存するだけでなく、 フィールド名をキーとして連想配列にもデータが保存されます。

結果において複数のカラムが同じフィールド名を有している場合、後の カラムが優先されます。同名の他のカラムにアクセスするには、カラムの 添字番号を使用するか、カラムのエイリアスを作成する必要があります。

<?php

ingres_query
("select t1.f1 as foo t2.f1 as bar from t1, t2");
$result = ingres_fetch_array();
$foo = $result["foo"];
$bar = $result["bar"];

?>

result_type には、数値添字の場合に INGRES_NUM、連想配列の場合にINGRES_ASSOC、両方の場合に INGRES_BOTH(デフォルト)を指定可能です。

速度面では、この関数は ingres_fetch_object() と同じで、ingres_fetch_row() とほぼ同等です (差は僅かです)。

例 1. ingres_fetch_array() の例

<?php
ingres_connect
($database, $user, $password);

ingres_query ("select * from table");
while (
$row = ingres_fetch_array()) {
    echo
$row["user_id"];  // 連想配列を使用する
    
echo $row["fullname"];
    echo
$row[1];          // 数値添字配列を使用する
    
echo $row[2];
}
?>

ingres_query(), ingres_num_fields(), ingres_field_name(), ingres_fetch_object(), ingres_fetch_row() も参照ください。