Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Задает предопределенный атрибут PDO либо настраиваемый атрибут драйвера.
Синтаксис
bool PDO::setAttribute ( $attribute, $value );
Параметры
$attribute: задаваемый атрибут. Список поддерживаемых атрибутов см. в разделе "Примечания".
$value: значение (смешанные типы).
Возвращаемое значение
Возвращает значение true в случае успеха, в противном случае — значение false.
Замечания
| Атрибут | Обрабатывается | Поддерживаемые значения | Description |
|---|---|---|---|
| PDO::ATTR_CASE | PDO | PDO::CASE_LOWER PDO::CASE_NATURAL PDO::CASE_UPPER |
Указывает регистр имен столбцов. PDO::CASE_LOWER задает имена столбцов в нижнем регистре. PDO::CASE_NATURAL (используется по умолчанию) отображает имена столбцов в том виде, в котором они возвращаются из базы данных. PDO::CASE_UPPER задает имена столбцов в верхнем регистре. Этот атрибут можно задать с помощью PDO::setAttribute. |
| PDO::ATTR_DEFAULT_FETCH_MODE | PDO | Обратитесь к документации по PDO. | Обратитесь к документации по PDO. |
| PDO::ATTR_DEFAULT_STR_PARAM | PDO | PDO::PARAM_STR_CHAR PDO::PARAM_STR_NATL |
Дополнительные сведения см. в примерах использования класса PDO::quote. |
| PDO::ATTR_ERRMODE | PDO | PDO::ERRMODE_SILENT PDO::ERRMODE_WARNING PDO::ERRMODE_EXCEPTION |
Указывает, как драйвер сообщает о сбоях. PDO::ERRMODE_SILENT (используется по умолчанию) задает коды ошибок и сведения об ошибках. PDO::ERRMODE_WARNING вызывает E_WARNING. PDO::ERRMODE_EXCEPTION приводит к возникновению исключения. Этот атрибут можно задать с помощью PDO::setAttribute. |
| PDO::ATTR_ORACLE_NULLS | PDO | Обратитесь к документации по PDO. | Указывает, как следует возвращать значения NULL. PDO::NULL_NATURAL не выполняет преобразование. PDO::NULL_EMPTY_STRING преобразует пустую строку в значение NULL. PDO::NULL_TO_STRING преобразует значение NULL d пустую строку. |
| PDO::ATTR_STATEMENT_CLASS | PDO | Обратитесь к документации по PDO. | Задает пользовательский класс инструкций, производный от PDOStatement. Требует использования array(string classname, array(mixed constructor_args)).Дополнительные сведения см. в документации по PDO. |
| PDO::ATTR_STRINGIFY_FETCHES | PDO | true или false | Преобразует числовые значения в строки при извлечении данных. |
| PDO::SQLSRV_ATTR_CLIENT_BUFFER_MAX_KB_SIZE | Драйверы Microsoft SQL Server для PHP | От 1 до предела памяти PHP. | Задает размер буфера, который содержит результирующий набор при использовании клиентского курсора. Значение по умолчанию — 10 240 КБ, если не указано в файле php.ini. Число должно быть больше нуля. Дополнительные сведения о запросах, создающих клиентский курсор: Типы курсоров (PDO_SQLSRV Driver). |
| PDO::SQLSRV_ATTR_DECIMAL_PLACES | Драйверы Microsoft SQL Server для PHP | Целое число от 0 до 4 (включительно). | Указывает число десятичных знаков при форматировании полученных денежных значений. Любое отрицательное целое число или значение больше 4 будет игнорироваться. Этот параметр работает, только если для PDO::SQLSRV_ATTR_FORMAT_DECIMALS указано значение true. Этот параметр также можно задать на уровне инструкции. В таком случае этот параметр будет переопределен параметром уровня инструкции. См. подробнее о форматировании десятичных строк и денежных значений (драйвер PDO_SQLSRV). |
| PDO::SQLSRV_ATTR_DIRECT_QUERY | Драйверы Microsoft SQL Server для PHP | true или false | Задает выполнение прямого или подготовленного запроса. Дополнительные сведения см. в статье Выполнение прямых и подготовленных инструкций в драйвере PDO_SQLSRV. |
| PDO::SQLSRV_ATTR_ENCODING | Драйверы Microsoft SQL Server для PHP | PDO::SQLSRV_ENCODING_UTF8 PDO::SQLSRV_ENCODING_SYSTEM |
Задает кодировку, используемую драйвером для обмена данными с сервером. PDO::SQLSRV_ENCODING_BINARY не поддерживается. По умолчанию используется PDO::SQLSRV_ENCODING_UTF8. |
| PDO::SQLSRV_ATTR_FETCHES_DATETIME_TYPE | Драйверы Microsoft SQL Server для PHP | true или false | Указывает, нужно ли извлекать типы даты и времени в виде объектов PHP DateTime. Если оставить значение false, по умолчанию они будут возвращаться как строки. Этот параметр также можно задать на уровне инструкции. В таком случае этот параметр будет переопределен параметром уровня инструкции. См. подробнее об извлечении типов даты и времени в виде объектов PHP DateTime с помощью драйвера PDO_SQLSRV. |
| PDO::SQLSRV_ATTR_FETCHES_NUMERIC_TYPE | Драйверы Microsoft SQL Server для PHP | true или false | Обрабатывает выборку числовых значений из столбцов с числовыми типами SQL (bit, integer, smallint, tinyint, float или real). Если включен флаг параметра подключения ATTR_STRINGIFY_FETCHES, возвращаемое значение является строкой даже при включении SQLSRV_ATTR_FETCHES_NUMERIC_TYPE. Если возвращаемый тип PDO в столбце привязки представляет PDO_PARAM_INT, возвращаемое значение из столбца с целочисленными значениями имеет тип int даже при отключении SQLSRV_ATTR_FETCHES_NUMERIC_TYPE. |
| PDO::SQLSRV_ATTR_FORMAT_DECIMALS | Драйверы Microsoft SQL Server для PHP | true или false | Указывает, нужно ли при необходимости добавлять начальные нули к десятичным строкам. Если этот параметр задан, включается параметр PDO::SQLSRV_ATTR_DECIMAL_PLACES для форматирования типов валюты. Если задано значение false, по умолчанию будут возвращаться точные числа с пропуском начальных нулей для значений меньше 1. Этот параметр также можно задать на уровне инструкции. В таком случае этот параметр будет переопределен параметром уровня инструкции. См. подробнее о форматировании десятичных строк и денежных значений (драйвер PDO_SQLSRV). |
| PDO::SQLSRV_ATTR_QUERY_TIMEOUT | Драйверы Microsoft SQL Server для PHP | integer | Задает время ожидания выполнения запроса в секундах. По умолчанию используется значение 0, то есть драйвер ожидает результаты бесконечно долго. Отрицательные значения не допускаются. |
PDO обрабатывает некоторые предопределенные атрибуты, оставляя обработку остальных драйверу. Все настраиваемые атрибуты и параметры соединения обрабатываются драйвером. Сведения о неподдерживаемых атрибутах, параметрах соединения и значениях будут выводиться согласно параметрам PDO::ATTR_ERRMODE.
Добавлена поддержка PDO версии 2.0 драйверов Майкрософт для PHP для SQL Server.
Пример
Этот пример показывает, как задать атрибут 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" ) ));
}
?>