データベース接続の属性を取得する

# PDO::getAttribute

(PHP 5 >= 5.1.0, PHP 7, PHP 8, PECL pdo >= 0.2.0)

PDO::getAttribute — データベース接続の属性を取得する

### 説明

public function PDO::getAttribute(int `$attribute`): mixed

この関数はデータベース接続の属性値を返します。PDOStatement 属性を取得する場合、PDOStatement::getAttribute() を参照ください。

いくつかのデータベースもしくはドライバは、 データベース接続の属性の全てのをサポートしていないかも知れないことに 注意してください。

### パラメータ

`attribute`

  `PDO_ATTR_*` 定数の 1 つを指定します。 データベース接続に適用される一般的な属性は以下の通りです。

  - `PDO::ATTR_AUTOCOMMIT`
  - `PDO::ATTR_CASE`
  - `PDO::ATTR_CLIENT_VERSION`
  - `PDO::ATTR_CONNECTION_STATUS`
  - `PDO::ATTR_DRIVER_NAME`
  - `PDO::ATTR_ERRMODE`
  - `PDO::ATTR_ORACLE_NULLS`
  - `PDO::ATTR_PERSISTENT`
  - `PDO::ATTR_PREFETCH`
  - `PDO::ATTR_SERVER_INFO`
  - `PDO::ATTR_SERVER_VERSION`
  - `PDO::ATTR_TIMEOUT`
  ドライバによっては、 そのドライバ固有の属性を使っているかもしれません。 そういう属性は、他のドライバでは使っては いけない ことに注意して下さい。

### 戻り値

コールに成功した場合は要求された PDO 属性の値を返します。 コールに失敗した場合は `null` を返します。

### エラー / 例外

ドライバが要求された `attribute` をサポートしていない場合、 PDO::getAttribute() は PDOException をスローします。

### 例

例1 データベース接続の属性を取得する

    <?php
    $conn = new PDO('odbc:sample', 'db2inst1', 'ibmdb2');
    $attributes = array(
        "AUTOCOMMIT", "ERRMODE", "CASE", "CLIENT_VERSION", "CONNECTION_STATUS",
        "ORACLE_NULLS", "PERSISTENT", "PREFETCH", "SERVER_INFO", "SERVER_VERSION",
        "TIMEOUT"
    );

    foreach ($attributes as $val) {
        echo "PDO::ATTR_$val: ";
        echo $conn->getAttribute(constant("PDO::ATTR_$val")) . "\n";
    }
    ?>

### 参考

- PDO::setAttribute() - 属性を設定する
- PDOStatement::getAttribute() - 文の属性を取得する
- PDOStatement::setAttribute() - 文の属性を設定する

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open