pg_last_error および pg_result_error が返すメッセージの詳細度を指定する

# pg_set_error_verbosity

(PHP 5 >= 5.1.0, PHP 7)

pg_set_error_verbosity — pg_last_error() および pg_result_error() が返すメッセージの詳細度を指定する

### 説明

pg_set_error_verbosity ([ resource `$connection` ], int `$verbosity` ) : int

pg_last_error() および pg_result_error() が返すメッセージの詳細度を指定します。

pg_set_error_verbosity() は詳細度を設定し、その接続の これまでの設定を返します。`PGSQL_ERRORS_TERSE` モードでは、返されるメッセージは深刻度・概要 および 発生位置のみです。 これはたいていの場合 1 行に収まります。デフォルトのモード （`PGSQL_ERRORS_DEFAULT`）では、それに加えて何らかの 詳細情報・ヒントあるいは状況フィールドを含みます（これらは複数行に またがる可能性があります）。`PGSQL_ERRORS_VERBOSE` モードは、有効なフィールドをすべて含みます。詳細度の設定変更内容は それ以降に新しく作成した結果オブジェクトにのみ反映され、既存の 結果オブジェクトには影響を与えません。

### パラメータ

`connection`

  PostgreSQL データベース接続リソース。`connection` が指定されていない場合はデフォルトの接続が使用されます。 デフォルトの接続は、直近の pg_connect() あるいは pg_pconnect() によって作成されたものです。

`verbosity`

  指定する詳細度。`PGSQL_ERRORS_TERSE`、 `PGSQL_ERRORS_DEFAULT` あるいは `PGSQL_ERRORS_VERBOSE` 。

### 返り値

変更前の詳細度レベル。`PGSQL_ERRORS_TERSE`、 `PGSQL_ERRORS_DEFAULT` あるいは `PGSQL_ERRORS_VERBOSE` のいずれかを 返します。

### 例

例1 pg_set_error_verbosity() の例

`<?php
$dbconn = pg_connect("dbname=publisher") or die("Could not connect");
if (!pg_connection_busy($dbconn)) {
pg_send_query($dbconn, "select * from doesnotexist;");
}
pg_set_error_verbosity($dbconn, PGSQL_ERRORS_VERBOSE);
$res1 = pg_get_result($dbconn);
echo pg_result_error($res1);
?>`

### 参考

- pg_last_error() - 特定の接続から直近のエラーメッセージ文字列を取得する
- pg_result_error() - 結果に関連するエラーメッセージを取得する