2016-05-30 1 views
0

Мой файл по умолчанию php.ini содержит как расширения (установленные через варево), так и я иногда вижу различные варианты в Linux (AMZN vs Centos) с битом _pdo_. В чем разница?В чем разница между php_pdo_pgsql и php_pgsql расширениями PHP?

Обновление: Я получал ошибки, так как pg_connect не найден, и это похоже на версию, отличную от PDO. Чтобы получить эту установку на Mac с помощью варева, мне нужно было добавить поддержку, запустив brew reinstall php56 --with-postgresql

+0

Это как Coca-Cola против Pepsi - всего две альтернативы для одной и той же вещи. –

ответ

2

PDO является коротким для объектов данных PHP и представляет собой абстракцию, которая может быть отображена во множество разных баз данных. Это означает, что вы можете легко перемещаться между такими вещами, как MySQL, PGSQL и SQLite. Модуль PDO позволяет выполнять функции, которые вы видите here для PGSQL.

Модуль не-PDO специфичен для Postgres и включает в себя this набор нестандартизированных функций, которые будут работать только с базами данных Postgres.

1

Расширение PDO может подключаться к различным системам управления базами данных с тем же синтаксисом, если есть драйвер для системы, которую вы хотите использовать. Расширение PostgreSQL может подключаться только к PostgreSQL.

Что вы видите, это расширение PostgreSQL и драйвер PDO для PostgreSQL.