PHP 7.1.0 Release Candidate 3 Released

PDO::getAttribute

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

PDO::getAttribute Recuperar um atributo da conexão com o banco de dados

Descrição

public mixed PDO::getAttribute ( int $attribute )

Esta função retorna o valor de um atributo da conexão com o banco de dados. Para recuperar atributos de PDOStatement consulte PDOStatement::getAttribute().

Note que algumas combinações de banco de dados e drivers podem não suportar todos os atributos da conexão com o banco de dados.

Parâmetros

attribute

Uma das constantes PDO::ATTR_*. As constantes que se aplicam a conexões com o banco de dados são as seguintes:

  • 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

Valor Retornado

Uma chamada com sucesso retornará o valor do atributo PDO solicitado. Uma chamada sem sucesso retornará null.

Exemplos

Exemplo #1 Recuperando atributos de uma conexão com o banco de dados

<?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";
}
?>

Veja Também

add a note add a note

User Contributed Notes 3 notes

up
4
Robert Parham
1 year ago
Oracle does not have the following attributes:

PDO::ATTR_CONNECTION_STATUS: SQLSTATE[IM001]: Driver does not support this function: driver does not support that attribute
PDO::ATTR_PREFETCH: SQLSTATE[IM001]: Driver does not support this function: driver does not support that attribute
PDO::ATTR_TIMEOUT: SQLSTATE[IM001]: Driver does not support this function: driver does not support that attribute

The rest work fine.
up
0
mfinkyr at gmail dot com
7 months ago
As of 30-Jan-2016, MariaDB on version "5.5.5-10.1.9-MariaDB" apparently  does not support: "PREFETCH" nor "TIMEOUT".
up
-5
peter dot hopfgartner at r3-gis dot com
7 years ago
The Oracle driver seems to not support PDO::getAttribute():

ociPHP Fatal error:  Uncaught exception 'PDOException' with message 'SQLSTATE[IM001]: Driver does not support this function: driver does not support getting attributes' in ...
To Top