(PHP 5 >= 5.1.0, PHP 7, PHP 8, PECL pdo >= 0.1.0)
PDO::setAttribute — Устанавливает атрибут
Метод устанавливает атрибут в дескрипторе базы данных. Отдельные общие атрибуты приводит следующий параграф; отдельные драйверы иногда используют дополнительные атрибуты, характерные для драйвера. Обратите внимание, что атрибуты конкретного драйвера нельзя указывать с другими драйверами.
PDO::ATTR_CASE
Принудительное приведение названия столбцов к конкретному регистру. Принимает значение из следующего списка:
PDO::CASE_LOWER
PDO::CASE_NATURAL
PDO::CASE_UPPER
PDO::ATTR_ERRMODE
Режим сообщения об ошибках модуля PDO. Принимает значение из следующего списка:
PDO::ERRMODE_SILENT
PDO::ERRMODE_WARNING
E_WARNING
.
PDO::ERRMODE_EXCEPTION
PDO::ATTR_ORACLE_NULLS
Замечание: Атрибут доступен для всех драйверов, а не только для Oracle.
Определяет, требуется ли и как преобразовывать значения null
и пустые строки.
Принимает значение из следующего списка:
PDO::NULL_NATURAL
PDO::NULL_EMPTY_STRING
null
.
PDO::NULL_TO_STRING
null
преобразуется в пустую строку.
PDO::ATTR_STRINGIFY_FETCHES
Управляет преобразованием извлечённых значений (кроме null
) в строки.
Атрибут принимает логическое значение (bool):
true
для включения и false
для отключения. Значение по умолчанию равняется true
.
Значения null
остаются неизменными, если только для атрибута PDO::ATTR_ORACLE_NULLS
не установили значение PDO::NULL_TO_STRING
.
PDO::ATTR_STATEMENT_CLASS
Установка пользовательского класса оператора, производного от PDOStatement.
Требуется array(string classname, array(mixed constructor_args))
.
Не может использоваться с постоянными экземплярами PDO.
PDO::ATTR_TIMEOUT
Указывает продолжительность времени ожидания в секундах. Принимает значение в виде целого числа (int).
Замечание:
Не каждый драйвер поддерживает этот параметр и его значение иногда отличается от драйвера к драйверу. Например, SQLite будет ждать до этого значения времени, прежде чем отказаться от получения блокировки на запись, но другие драйверы могут интерпретировать это как интервал ожидания соединения или чтения.
PDO::ATTR_AUTOCOMMIT
Замечание: Доступно только для драйверов OCI, Firebird и MySQL.
Требуется ли автоматически фиксировать каждый отдельный оператор.
Атрибут принимает логическое значение (bool):
true
для включения и false
для отключения. Значение по умолчанию равняется true
.
PDO::ATTR_EMULATE_PREPARES
Замечание: Атрибут доступен только для драйверов СУБД OCI, Firebird и MySQL.
Включает или отключает эмуляцию подготовленных запросов.
Отдельные драйверы не поддерживают подготовленные запросы из коробки или поддерживают ограниченно.
Со значением true
объект PDO будет эмулировать подготовленные запросы,
иначе PDO будет пытаться использовать встроенные подготовленные запросы.
PDO будет возвращаться к эмуляции подготовленного запроса,
если драйвер не сумеет подготовить текущий запрос.
PDO::MYSQL_ATTR_USE_BUFFERED_QUERY
Замечание: Доступно только для драйвера СУБД MySQL.
Определяет, использовать ли буферизованные запросы.
Атрибут принимает логическое значение (bool):
true
для включения и false
для отключения. Значение по умолчанию равняется true
.
PDO::ATTR_DEFAULT_FETCH_MODE
Устанавливает режим выборки по умолчанию. Описание режимов даёт документация к методу PDOStatement::fetch().
attribute
Атрибут для изменения.
value
Значение для установки параметра attribute
,
иногда требует конкретный тип в зависимости от атрибута.
Функция возвращает true
, если выполнилась успешно, или false
, если возникла ошибка.