Condividi tramite


PDO::setAttribute

Download del driver PHP

Imposta un attributo predefinito del PDO o un attributo personalizzato del driver.

Sintassi

bool PDO::setAttribute ( $attribute, $value );  

Parametri

$attribute: attributo da impostare. Vedere la sezione Osservazioni per l'elenco degli attributi supportati.

$value: valore (tipo misto).

Valore restituito

Restituisce true in caso di esito positivo; in caso contrario, false.

Osservazioni:

Attributo Elaborato da Valori supportati Descrizione
PDO::ATTR_CASE PDO PDO::CASE_LOWER

PDO::CASE_NATURAL

PDO::CASE_UPPER
Consente di specificare se i nomi delle colonne sono in lettere maiuscole o minuscole.

PDO::CASE_LOWER fa sì che i nomi delle colonne siano in lettere minuscole.

PDO::CASE_NATURAL (impostazione predefinita) consente di visualizzare i nomi delle colonne così come vengono restituiti dal database.

PDO::CASE_UPPER fa sì che i nomi delle colonne siano in lettere maiuscole.

Questo attributo può essere impostato usando PDO::setAttribute.
PDO::ATTR_DEFAULT_FETCH_MODE PDO Vedere la documentazione del PDO. Vedere la documentazione del PDO.
PDO::ATTR_DEFAULT_STR_PARAM PDO PDO::PARAM_STR_CHAR

PDO::PARAM_STR_NATL
Per altre informazioni, vedere gli esempi in PDO::quote.
PDO::ATTR_ERRMODE PDO PDO::ERRMODE_SILENT

PDO::ERRMODE_WARNING

PDO::ERRMODE_EXCEPTION
Consente di specificare come il driver segnala gli errori.

PDO::ERRMODE_SILENT (predefinito) imposta i codici di errore e le informazioni.

PDO::ERRMODE_WARNING genera E_WARNING.

PDO::ERRMODE_EXCEPTION causa la generazione di un'eccezione.

Questo attributo può essere impostato usando PDO::setAttribute.
PDO::ATTR_ORACLE_NULLS PDO Vedere la documentazione del PDO. Consente di specificare come devono essere restituiti i valori Null.

PDO::NULL_NATURAL non esegue alcuna conversione.

PDO::NULL_EMPTY_STRING converte una stringa vuota in valore Null.

PDO::NULL_TO_STRING converte il valore Null in una stringa vuota.
PDO::ATTR_STATEMENT_CLASS PDO Vedere la documentazione del PDO. Consente di impostare la classe di istruzione fornita dall'utente derivata da PDOStatement.

Richiede array(string classname, array(mixed constructor_args)).

Per altre informazioni, vedere la documentazione del PDO.
PDO::ATTR_STRINGIFY_FETCHES PDO true o false Consente di convertire i valori numerici in stringhe durante il recupero di dati.
PDO::SQLSRV_ATTR_CLIENT_BUFFER_MAX_KB_SIZE Microsoft Drivers per PHP per SQL Server 1 per il limite di memoria PHP. Imposta le dimensioni del buffer contenente il set di risultati per un cursore sul lato client.

Il valore predefinito è 10240 KB, se non viene specificato nel file php.ini.

Lo zero e i numeri negativi non sono consentiti.

Per altre informazioni sulle query, vedere Tipi di cursore (PDO_SQLSRV Driver).
PDO::SQLSRV_ATTR_DECIMAL_PLACES Microsoft Drivers per PHP per SQL Server Numero intero compreso tra 0 e 4 inclusi Specifica il numero di posizioni decimali per la formattazione dei valori money recuperati.

Qualsiasi numero intero negativo o valore maggiore di 4 verrà ignorato.

Questa opzione funziona solo quando PDO::SQLSRV_ATTR_FORMAT_DECIMALS è true.

Questa opzione può anche essere impostata a livello di istruzione. In questo caso, l'opzione a livello di istruzione eseguirà l'override di questa opzione.

Per altre informazioni, vedere Formattazione di stringhe decimali e valori money (driver PDO_SQLSRV).
PDO::SQLSRV_ATTR_DIRECT_QUERY Microsoft Drivers per PHP per SQL Server true o false Specifica l'esecuzione di query diretta o preparata. Per altre informazioni, vedere Esecuzione di istruzioni diretta e preparata nel driver PDO_SQLSRV.
PDO::SQLSRV_ATTR_ENCODING Microsoft Drivers per PHP per SQL Server PDO::SQLSRV_ENCODING_UTF8

PDO::SQLSRV_ENCODING_SYSTEM.
Consente di impostare la codifica del set di caratteri usato dal driver per comunicare con il server.

PDO::SQLSRV_ENCODING_BINARY non è supportato.

Il valore predefinito è PDO::SQLSRV_ENCODING_UTF8.
PDO::SQLSRV_ATTR_FETCHES_DATETIME_TYPE Microsoft Drivers per PHP per SQL Server true o false Specifica se recuperare i tipi di data e ora come oggetti DateTime PHP. Se false, il comportamento predefinito è restituirli come stringhe.

Questa opzione può anche essere impostata a livello di istruzione. In questo caso, l'opzione a livello di istruzione eseguirà l'override di questa opzione.

Per altre informazioni, vedere Procedura: Recuperare i tipi di data e ora come oggetti DateTime PHP usando il driver PDO_SQLSRV.
PDO::SQLSRV_ATTR_FETCHES_NUMERIC_TYPE Microsoft Drivers per PHP per SQL Server true o false Gestisce i recuperi numerici dalle colonne con tipi SQL numerici (bit, integer, smallint, tinyint, float o real).

Quando il flag dell'opzione di connessione ATTR_STRINGIFY_FETCHES è attivato, il valore restituito è una stringa, anche quando è attivato SQLSRV_ATTR_FETCHES_NUMERIC_TYPE.

Quando il tipo PDO restituito nella colonna di associazione è PDO_PARAM_INT, il valore restituito da una colonna integer è un valore int anche se SQLSRV_ATTR_FETCHES_NUMERIC_TYPE è disattivato.
PDO::SQLSRV_ATTR_FORMAT_DECIMALS Microsoft Drivers per PHP per SQL Server true o false Specifica se aggiungere zeri iniziali alle stringhe decimali quando appropriato. Se impostata, questa opzione abilita l'opzione PDO::SQLSRV_ATTR_DECIMAL_PLACES per la formattazione dei tipi money. Se false, viene usato il comportamento predefinito di restituire la precisione esatta e di omettere gli zeri iniziali per valori inferiori a 1.

Questa opzione può anche essere impostata a livello di istruzione. In questo caso, l'opzione a livello di istruzione eseguirà l'override di questa opzione.

Per altre informazioni, vedere Formattazione di stringhe decimali e valori money (driver PDO_SQLSRV).
PDO::SQLSRV_ATTR_QUERY_TIMEOUT Microsoft Drivers per PHP per SQL Server integer Imposta il timeout in secondi della query.

Il valore predefinito è 0, vale a dire che il driver attende i risultati per un periodo illimitato.

I numeri negativi non sono consentiti.

Il PDO elabora alcuni attributi predefiniti e richiede al driver di elaborare gli altri. Tutti gli attributi personalizzati e le opzioni di connessione vengono elaborati dal driver. Eventuali attributi, opzioni di connessione o valori non supportati vengono segnalati in base all'impostazione di PDO::ATTR_ERRMODE.

Il supporto per PDO è stato aggiunto nella versione 2.0 dei driver Microsoft per PHP per SQL Server.

Esempio

In questo esempio viene illustrato come impostare l'attributo PDO::ATTR_ERRMODE.

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

Vedi anche

Classe PDO

PDO