PHP Data Objects
PHP Data Objects (PDO /ˌpi di ˈoʊ/) — расширение для PHP, предоставляющее разработчику универсальный интерфейс для доступа к различным базам данных.
PDO предлагает единые методы для работы с различными базами данных, хотя текст запросов может немного отличаться. Так как многие СУБД реализуют свой диалект SQL, который в той или иной мере поддерживает стандарты ANSI и ISO, то при использовании простых запросов можно добиться совместимости между различными языками. На практике это означает, что можно достаточно легко перейти на другую СУБД, при этом не меняя или частично изменяя код программы.
Скорость работы и масштабируемость
PDO не использует абстрактные слои для подключения к БД, наподобие ODBC, а использует для разных БД их «родные» драйверы, что позволяет добиться высокой производительности. В настоящее время для PDO существуют драйверы практически ко всем общеизвестным СУБД и интерфейсам. Также PDO позволяет работать одновременно с несколькими базами данных.
Защита
Из методов борьбы с sql-инъекциями появилось prepared. Prepared statement — это заранее скомпилированное SQL-выражение, которое может быть многократно выполнено путём отправки серверу лишь различных наборов данных. Дополнительным преимуществом является невозможность провести SQL-инъекцию через данные, используемые в placeholder’ах.
См. также
- PHP
- ADOdb
Ссылки
- Описание PDO на официальном сайте PHP (англ.)
- Страница расширения PDO в PECL