pg_fetch_object
(PHP 4, PHP 5, PHP 7)
pg_fetch_object — 行をオブジェクトとして得る
説明
pg_fetch_object
( resource $result
[, int $row
[, int $result_type
= PGSQL_ASSOC
]] ) : object
pg_fetch_object
( resource $result
[, int $row
[, string $class_name
[, array $params
]]] ) : object
pg_fetch_object() は、取得した行のフィールド名に 対応するプロパティを有するオブジェクトを返します。オプションとして、 指定したクラスのコンストラクタにパラメータを渡してインスタンス化する ことも可能です。
注意:
この関数は、NULL フィールドに PHPの
null
値を設定します。
速度面では、この関数は pg_fetch_array() と同じであり、 pg_fetch_row() とほとんど同じ程度です (違いはわずかです)。
パラメータ
result
- pg_query(), pg_query_params() あるいは pg_execute() から返される PostgreSQL の クエリ結果リソース。
row
- 取得する行番号。最初の行は 0 です。省略したり
null
を指定したりした場合は、 次の行を取得します。 result_type
- 非推奨で、無視されます。
class_name
- インスタンス化し、プロパティを設定して返り値とするクラスの名前。 指定しない場合は stdClass オブジェクトが返されます。
params
class_name
オブジェクトのコンストラクタに 渡すオプションの配列。
返り値
結果の各フィールドに対応する属性を持つ object を返します。
データベースの NULL
値は null
として返します。
row
が結果の行数より大きい場合・行が存在しない場合
、そしてそれ以外のエラーが発生した場合は false
を返します。
例
例1 pg_fetch_object() の例
<?php $database = "store";$db_conn = pg_connect("host=localhost port=5432 dbname=$database");if (!$db_conn) { echo "Failed connecting to postgres database $database\n"; exit;}$qu = pg_query($db_conn, "SELECT * FROM books ORDER BY author");while ($data = pg_fetch_object($qu)) { echo $data->author . " ("; echo $data->year . "): "; echo $data->title . "<br />";}pg_free_result($qu);pg_close($db_conn);?>
参考
- pg_query() - クエリを実行する
- pg_fetch_array() - 行を配列として取得する
- pg_fetch_assoc() - 行を連想配列として取得する
- pg_fetch_row() - 数値添字の配列として行を得る
- pg_fetch_result() - 結果リソースから値を返す