Использует ли PDO по умолчанию эмулированные подготовленные заявления?

PDO имеет опцию PDO::ATTR_EMULATE_PREPARES, которая контролирует, если подготовленные операторы следует эмулировать, только если они не поддерживаются БД или всегда. Однако он не упоминает, всегда ли он имитирует их по умолчанию или нет.

Обычно можно предположить, что эмуляция используется только в случае необходимости, но так как это PHP, то ничто не может быть принято только потому, что оно разумно...

Ответ 1

Зависит от драйвера базы данных. Они всегда эмулируются по умолчанию для MySql (хотя, конечно, вы можете отключить эту функцию вручную); в Postgres правильная настройка по умолчанию обнаружена динамически.