PDO::getAttribute
Recupera o valor de um atributo de PDO ou driver predefinido.
Sintaxe
mixed PDO::getAttribute ( $attribute )
Parâmetros
$attribute: um dos atributos com suporte. Consulte a seção Comentários para obter uma lista de atributos com suporte.
Valor de retorno
Em caso de êxito, retorna o valor de uma opção de conexão, um atributo de PDO predefinido ou um atributo de driver personalizado. Retorna null em caso de falha.
Comentários
A tabela a seguir contém a lista dos atributos com suporte.
Atributo | Processado por | Valores com suporte | Descrição |
---|---|---|---|
PDO::ATTR_CASE | PDO | PDO::CASE_LOWER PDO::CASE_NATURAL PDO::CASE_UPPER |
Especifica se os nomes de coluna devem usar maiúsculas ou minúsculas. PDO::CASE_LOWER força nomes de coluna com letras minúsculas, PDO::CASE_NATURAL deixa o nome da coluna conforme retornado pelo banco de dados e PDO::CASE_UPPER força nomes de coluna com letras maiúsculas. O padrão é PDO::CASE_NATURAL. Esse atributo também pode ser definido usando PDO::setAttribute. |
PDO::ATTR_CLIENT_VERSION | Drivers da Microsoft para PHP para SQL Server | Matriz de cadeia de caracteres | Descreve as versões do driver e das bibliotecas relacionadas. Retorna uma matriz com os seguintes elementos: versão do ODBC (MajorVer.MinorVer), SQL Server nome e versão da DLL do Cliente Nativo, versão Drivers da Microsoft para PHP para SQL Server (MajorVer.MinorVer.BuildNumber.Revision) |
PDO::ATTR_DEFAULT_STR_PARAM | PDO | PDO::PARAM_STR_CHAR PDO::PARAM_STR_NATL |
Caso não esteja definido como PDO::PARAM_STR_CHAR, PDO::PARAM_STR_NATL retornará. |
PDO::ATTR_DRIVER_NAME | PDO | String | Sempre retorna "sqlsrv". |
PDO::ATTR_DRIVER_VERSION | Drivers da Microsoft para PHP para SQL Server | String | Indica a versão do Drivers da Microsoft para PHP para SQL Server (MajorVer.MinorVer.BuildNumber.Revision) |
PDO::ATTR_ERRMODE | PDO | PDO::ERRMODE_SILENT PDO::ERRMODE_WARNING PDO::ERRMODE_EXCEPTION |
Especifica como as falhas devem ser tratadas pelo driver. PDO::ERRMODE_SILENT (o padrão) define os códigos e as informações de erro. PDO::ERRMODE_WARNING gera um E_WARNING. PDO::ERRMODE_EXCEPTION gera uma exceção. Esse atributo também pode ser definido usando PDO::setAttribute. |
PDO::ATTR_ORACLE_NULLS | PDO | Consulte a documentação do PDO. | Consulte a documentação do PDO. |
PDO::ATTR_SERVER_INFO | Drivers da Microsoft para PHP para SQL Server | Matriz de 3 elementos | Retorna o banco de dados atual, a versão do SQL Server e a instância do SQL Server. |
PDO::ATTR_SERVER_VERSION | Drivers da Microsoft para PHP para SQL Server | String | Indica a versão do SQL Server (Major.Minor.BuildNumber) |
PDO::ATTR_STRINGIFY_FETCHES | PDO | Consulte a documentação do PDO | Consulte a documentação do PDO. |
PDO::SQLSRV_ATTR_CLIENT_BUFFER_MAX_KB_SIZE | Drivers da Microsoft para PHP para SQL Server | 1 para o limite de memória do PHP. | Configura o tamanho do buffer que contém o conjunto de resultados de um cursor do lado do cliente. O padrão é 10.240 KB (10 MB). Para obter mais informações sobre os cursores do lado do cliente, veja Tipos de Cursor (Driver SQLSRV). |
PDO::SQLSRV_ATTR_DIRECT_QUERY | Drivers da Microsoft para PHP para SQL Server | true false |
Especifica a execução direta ou preparada da consulta. Para obter mais informações, consulte Execução de instrução direta e execução de instrução preparada no driver PDO_SQLSRV. |
PDO::SQLSRV_ATTR_ENCODING | Drivers da Microsoft para PHP para SQL Server | PDO::SQLSRV_ENCODING_UTF8 PDO::SQLSRV_ENCODING_SYSTEM |
Especifica a codificação do conjunto de caracteres usada pelo driver para se comunicar com o servidor. O padrão é PDO::SQLSRV_ENCODING_UTF8. |
PDO::SQLSRV_ATTR_FETCHES_NUMERIC_TYPE | Drivers da Microsoft para PHP para SQL Server | true ou false | Lida com buscas numéricas de colunas com tipos numéricos do SQL (bit, inteiro, smallint, tinyint, float ou real). Quando o sinalizador de opção de conexão ATTR_STRINGIFY_FETCHES está ativado, mesmo quando SQLSRV_ATTR_FETCHES_NUMERIC_TYPE estiver ativado, o valor retornado é uma cadeia de caracteres. Quando o tipo PDO retornado na coluna de associação for PDO_PARAM_INT, o valor de retorno de uma coluna de números inteiros é int, mesmo se SQLSRV_ATTR_FETCHES_NUMERIC_TYPE estiver desativado. |
PDO::SQLSRV_ATTR_QUERY_TIMEOUT | Drivers da Microsoft para PHP para SQL Server | Número inteiro | Define o tempo limite da consulta em segundos. O padrão é 0, o que significa que o driver aguardará resultados indefinidamente. Números negativos não são permitidos. |
O PDO processa alguns atributos predefinidos e requer que o driver processe outros. Todos os atributos personalizados e opções de conexão são tratados pelo driver. Um atributo ou opção de conexão sem suporte retorna null.
O suporte para PDO foi adicionado na versão 2.0 dos Drivers da Microsoft para PHP para SQL Server.
Exemplo
Este exemplo mostra o valor do atributo PDO::ATTR_ERRMODE, antes e depois de alterar seu valor.
<?php
$database = "AdventureWorks";
$conn = new PDO( "sqlsrv:server=(local) ; Database = $database", "", "");
$attributes1 = array( "ERRMODE" );
foreach ( $attributes1 as $val ) {
echo "PDO::ATTR_$val: ";
var_dump ($conn->getAttribute( constant( "PDO::ATTR_$val" ) ));
}
$conn->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
$attributes1 = array( "ERRMODE" );
foreach ( $attributes1 as $val ) {
echo "PDO::ATTR_$val: ";
var_dump ($conn->getAttribute( constant( "PDO::ATTR_$val" ) ));
}
// An example using PDO::ATTR_CLIENT_VERSION
print_r($conn->getAttribute( PDO::ATTR_CLIENT_VERSION ));
?>