PostgreSQL не отображается в функции phpconfig() (в Windows)

Я только что установил Apache 2.2.11 и скачал zip для PHP5.2.9-2.

я раскомментировал

расширение = php_pdo_pgsql.dll

а также

расширение = php_pgsql.dll

Но когда я вызываю функцию phpinfo(), postgresql не появляется. Что я забыл?

Кроме того, на сайте PHP я нашел это:

Чтобы включить поддержку PostgreSQL, при компиляции PHP требуется --with-pgsql[=DIR]. DIR — это базовый каталог установки PostgreSQL, по умолчанию /usr/local/pgsql. Если доступен модуль общих объектов, модуль PostgreSQL можно загрузить с помощью директивы расширения в php.ini или функции dl(). Я понимаю, что это предназначено для Linux, но есть ли здесь что-то написанное, говорящее мне сделать что-то, что я забыл?


person KdgDev    schedule 15.05.2009    source источник
comment
Нет. Но это даже не нужно. phpinfo() показывает информацию о найденных DLL, а не об установленных системах баз данных.   -  person KdgDev    schedule 17.05.2009


Ответы (3)


В вашем php.ini убедитесь, что директива extension_dir указывает на папку, содержащую файл php_pgsql.dll.

Также проверьте журнал ошибок HTTP на наличие ошибок.

person Jordan S. Jones    schedule 15.05.2009
comment
Этого еще не делал. Теперь я установил extension_dir в C:\php\ext, но пока безрезультатно. Пойду проверю эти журналы. - person KdgDev; 17.05.2009

Вы перезапустили Apache после внесения изменений в php.ini? Модуль PHP в Apache не будет принимать изменения до тех пор, пока не будет выполнен перезапуск.

person Cody Caughlan    schedule 15.05.2009
comment
Я знаю, самое основное. - person KdgDev; 17.05.2009

Вам по-прежнему нужна часть «клиентской библиотеки» pgsql, чтобы загрузить php_pgsql.dll или php_pdo_pgsql.dll. Кроме того, для дальнейшего использования вы можете использовать такой инструмент, как Dependency Walker, чтобы загрузить DLL-файлы PHP и просмотреть отсутствует связь времени выполнения.

person TML    schedule 19.05.2009