Подключение PDO и режимы ошибок
Соединение создаётся один раз на запрос с явными опциями и секретами вне репозитория.
new PDO($dsn, $user, $password, $options)DSN
DSN описывает драйвер и адрес базы. Пароль не помещают в URL страницы, код примера или публичный .env.example.
Опции
ERRMODE_EXCEPTION делает ошибку явной; FETCH_ASSOC задаёт предсказуемый формат; отключение эмуляции prepares полезно для MySQL, когда нужен нативный протокол.
Charset
Для MySQL укажите charset=utf8mb4 в DSN. Отдельный SET NAMES легко забыть и сложнее связать с моментом установления соединения.
Ошибка
Connection refused, Access denied и Unknown database требуют разных действий. Не объединяйте их в совет «проверьте пароль».
Задание
Соберите DSN локальным инструментом и перечислите, какие части относятся к конфигурации, а какие — к секретам.
Закрепите материал
Отметка, заметка, чек-лист и ответы остаются в localStorage этого браузера и не отправляются в аналитику.
Связанные материалы
Источники и проверка
- PHP Documentation Group — структурный источник, без внешней ссылки
Последняя содержательная проверка: . Автор-разработчик Михаил Каржин. Методика качества контента.