PDO::getAttribute
Ruft den Wert eines vordefinierten PDO- oder Treiberattributs ab.
Syntax
mixed PDO::getAttribute ( $attribute )
Parameter
$attribute: Eines der unterstützten Attribute. Eine Liste der unterstützten Attribute finden Sie bei den Anmerkungen.
Rückgabewert
Im Erfolgsfall wird der Wert einer Verbindungsoption, eines vordefinierten PDO-Attributs, oder eines benutzerdefinierten Treiberattributs zurückgegeben. Gibt bei einem Fehler NULL zurück.
Bemerkungen
Die nachfolgende Tabelle enthält die Liste mit den unterstützten Attributen:
attribute | Verarbeitet von | Unterstützte Werte | BESCHREIBUNG |
---|---|---|---|
PDO::ATTR_CASE | PDO | PDO::CASE_LOWER PDO::CASE_NATURAL PDO::CASE_UPPER |
Dies gibt an, ob die Spaltennamen entweder groß oder klein geschrieben sein sollen. PDO::CASE_LOWER erzwingt die Schreibung der Spaltennamen in Kleinbuchstaben, PDO::CASE_NATURAL belässt die Spaltennamen so wie sie aus der Datenbank zurückgegeben wurden und PDO::CASE_UPPER erzwingt die Schreibung der Spaltennamen in Großbuchstaben. Die Standardeinstellung ist PDO::CASE_NATURAL. Dieses Attribut kann auch mit PDO::setAttribute eingerichtet werden. |
PDO::ATTR_CLIENT_VERSION | Microsoft-Treiber für PHP für SQL Server | Array von Zeichenfolgen | Beschreibt die Version des Treibers und der verbundenen Bibliotheken Gibt ein Array mit den folgenden Elementen zurück: ODBC-Version (Hauptversion.Nebenversion), Name und Version der nativen SQL Server-Client-DLL, Microsoft-Treiber für PHP für SQL Server-Version (Hauptversion.Nebenversion.Buildnummer.Revision) |
PDO::ATTR_DEFAULT_STR_PARAM | PDO | PDO::PARAM_STR_CHAR PDO::PARAM_STR_NATL |
Wenn dieses Attribut nicht auf PDO::PARAM_STR_CHAR festgelegt ist, wird PDO::PARAM_STR_NATL zurückgegeben. |
PDO::ATTR_DRIVER_NAME | PDO | String | Gibt immer „sqlsrv“ zurück. |
PDO::ATTR_DRIVER_VERSION | Microsoft-Treiber für PHP für SQL Server | String | Gibt die Microsoft-Treiber für PHP für SQL Server-Version (Hauptversion.Nebenversion.Buildnummer.Revision) |
PDO::ATTR_ERRMODE | PDO | PDO::ERRMODE_SILENT PDO::ERRMODE_WARNING PDO::ERRMODE_EXCEPTION |
Gibt an, wie Fehler vom Treiber behandelt werden sollen. PDO::ERRMODE_SILENT (der Standard) legt die Fehlercodes und -informationen fest. PDO::ERRMODE_WARNING veranlasst E_WARNING. PDO::ERRMODE_EXCEPTION löst eine Ausnahme aus. Dieses Attribut kann auch mit PDO::setAttribute eingerichtet werden. |
PDO::ATTR_ORACLE_NULLS | PDO | Siehe PDO-Dokumentation. | Siehe PDO-Dokumentation. |
PDO::ATTR_SERVER_INFO | Microsoft-Treiber für PHP für SQL Server | Array aus drei Elementen | Gibt die aktuelle Datenbank, SQL Server-Version und SQL Server-Instanz zurück. |
PDO::ATTR_SERVER_VERSION | Microsoft-Treiber für PHP für SQL Server | String | Gibt die SQL Server-Version (Hauptversion.Nebenversion.Buildnummer) an. |
PDO::ATTR_STRINGIFY_FETCHES | PDO | Siehe PDO-Dokumentation. | Siehe PDO-Dokumentation. |
PDO::SQLSRV_ATTR_CLIENT_BUFFER_MAX_KB_SIZE | Microsoft-Treiber für PHP für SQL Server | 1 bis zur Grenze des PHP-Speichers. | Konfiguriert die Größe des Puffers, der das Resultset für einen clientseitigen Cursor enthält. Die Standardeinstellung ist 10.240 KB (10 MB). Weitere Informationen zu clientseitigen Cursorn finden Sie unter Cursortypen (SQLSRV-Treiber). |
PDO::SQLSRV_ATTR_DIRECT_QUERY | Microsoft-Treiber für PHP für SQL Server | true false |
Legt fest, ob eine direkte oder eine vorbereitete Anweisung ausgeführt wird. Weitere Informationen finden Sie unter Direkte Anweisungsausführung und vorbereitete Anweisungsausführung im PDO_SQLSRV-Treiber. |
PDO::SQLSRV_ATTR_ENCODING | Microsoft-Treiber für PHP für SQL Server | PDO::SQLSRV_ENCODING_UTF8 PDO::SQLSRV_ENCODING_SYSTEM |
Legt die Zeichensatzcodierung fest, die vom Treiber verwendet wird, um mit dem Server zu kommunizieren Der Standard ist PDO::SQLSRV_ENCODING_UTF8. |
PDO::SQLSRV_ATTR_FETCHES_NUMERIC_TYPE | Microsoft-Treiber für PHP für SQL Server | true oder false | Verarbeitet numerische Abrufvorgänge aus Spalten mit numerischen SQL-Typen („bit“, „integer“, „smallint“, „tinyint“, „float“ oder „real“). Wenn das Flag für die Verbindungsoption ATTR_STRINGIFY_FETCHES auf „On“ festgelegt ist, ist der Rückgabewert selbst dann eine Zeichenfolge, wenn SQLSRV_ATTR_FETCHES_NUMERIC_TYPE auf „On“ festgelegt ist. Wenn der zurückgegebene PDO-Typ in einer bind-Spalte PDO_PARAM_INT lautet, ist der Rückgabewert aus einer integer-Spalte vom Typ „int“, selbst wenn SQLSRV_ATTR_FETCHES_NUMERIC_TYPE auf „Off“ festgelegt ist. |
PDO::SQLSRV_ATTR_QUERY_TIMEOUT | Microsoft-Treiber für PHP für SQL Server | integer | Legt das Abfragetimeout in Sekunden fest. Der Standard ist 0, d. h. dass der Treiber unendlich lange auf Ergebnisse wartet. Negative Zahlen sind nicht zulässig. |
PDO verarbeitet einige der vordefinierten Attribute selbst, während für die Handhabung anderer der Treiber erforderlich ist. Alle benutzerdefinierten Attribute und Verbindungsoptionen werden vom Treiber gehandhabt. Ein nicht unterstütztes Attribut oder eine nicht unterstützte Verbindungsversion gibt NULL zurück.
Unterstützung für PDO wurde in Version 2.0 von Microsoft-Treiber für PHP für SQL Serverhinzugefügt.
Beispiel
Dieses Beispiel zeigt den Wert des Attributs PDO::ATTR_ERRMODE, bevor und nachdem der Wert geändert wurde.
<?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 ));
?>