PHP Unconference Europe 2015

ingres_fetch_array

( PHP 5 <= 5.0.5, PECL ingres >= 1.0.0)

ingres_fetch_array1 行分の結果を配列に取得する

説明

array ingres_fetch_array ( resource $result [, int $result_type ] )

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

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

<?php

$result 
ingres_query($link"select ap_place as city, ap_ccode as country from airport where ap_iatacode = 'VLL'"); 
$result ingres_fetch_array($result);
$foo $result["city"];
$bar $result["country"];

?>

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

デフォルトでは、ingres_fetch_array() が作成する配列のインデックスは 1 から始まります。これは、 他の DBMS の拡張モジュールが 0 から始めるのと異なっています。 他と同様に 0 から始めるようにするには、設定パラメータ ingres.array_index_start を使用します。

注意: 関連する設定項目

実行時設定ingres.array_index_start, ingres.fetch_buffer_size および ingres.utf8 ディレクティブも参照ください。

パラメータ

result

クエリ結果 ID。

result_type

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

返り値

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

例1 配列への結果の行の取得

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

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

参考

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top