КлассPDOPHP 5.1+

PDO — единый интерфейс доступа к базам данных

PDO даёт единый объектный API для драйверов баз данных; безопасность запроса зависит от prepared statements и корректных параметров.

new PDO(string $dsn, ?string $username = null, ?string $password = null, ?array $options = null)

Безопасное подключение

<?php
$pdo = new PDO($dsn, $user, $password, [
    PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
    PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
    PDO::ATTR_EMULATE_PREPARES => false,
]);

Что даёт PDO

Драйверы используют общий набор методов для подготовки запроса, привязки значений, чтения строк и управления транзакцией. SQL-диалект при этом не становится универсальным: особенности MySQL, PostgreSQL и SQLite остаются.

Граница безопасности

Параметры защищают значения, но не имена таблиц, колонок и направления сортировки. Такие части запроса выбирают из заранее разрешённого списка, а не подставляют из пользовательской строки.

Ошибки соединения

PDOException может содержать детали инфраструктуры. Пользователю показывают нейтральное сообщение, а диагностические данные пишут в закрытый журнал без паролей и DSN-секретов.

Транзакции

Группируйте связанные изменения в транзакцию и выполняйте rollback при исключении. Сначала убедитесь, что выбранный движок таблиц действительно поддерживает транзакции.

Связанные материалы

Источники и проверка

  • PHP Documentation Group — структурный источник, без внешней ссылки

Последняя содержательная проверка: . Автор-разработчик Михаил Каржин. Методика качества контента.

Данные этого сервиса

Настройки cookie и локальных данных

Аналитика

Текущий статус: не выбран. До согласия обе аналитические системы не загружаются.

Локальные данные

Удаление затрагивает только ключи PHP-сервиса в этом браузере и требует подтверждения.

Политики

Политика конфиденциальности · Политика использования файлов cookie