Я только что установил актуальный XAMPP на свой компьютер с win7 (x64), чтобы написать несколько PHP-скриптов для подключения к базе данных оракула. У меня также установлен нормальный клиент oracle 11.2.0 (PATH и ORACLE_HOME установлены правильно). Клиент используется для всех моих других работ без каких-либо проблем.
Когда я пытаюсь подключиться к базе данных оракула, PHP завершается с ошибкой Fatal error: Call to undefined function oci_connect() in
. Я помню, что мне пришлось включить «oci8-расширения» в моем php.ini, когда я сделал то же самое несколько лет назад на ПК с x32 winXP. Но мой текущий xampp не имеет этих dll в папке php/ext
(только php_oci8_12c.dll
, которая выдает несколько ошибок неизвестных функций при запуске apache и предназначена для oracle 12, а не 11), и php.ini также говорит, что они нужны только для мгновенный клиент.
;extension=php_oci8.dll ; Use with Oracle 10gR2 Instant Client
;extension=php_oci8_11g.dll ; Use with Oracle 11gR2 Instant Client
Также этот SO-вопросы показывает, что использование расширения комментариев с обычным клиентом будет не работает (что я тоже пробовал).
Я пытался найти решение в Google, но все «решения» — это «установить мгновенный клиент win32 и включить расширение». Но я не могу этого сделать, так как большая часть моей работы по контролю качества требует установленного и настроенного 11.2.0-клиента, и у меня все равно нет .dll в моей папке php/ext.
Я также попытался скопировать ociw32.dll из папки client/bin в папку php/ext, но затем apache говорит, что это не PHP-библиотека.
Итак, как я могу включить библиотеки оракулов PHP для использования oci8 для XAMPP на x64 win7 БЕЗ установки Win32 Oracle Instant Client и уничтожения моей текущей настройки?
редактировать: я также пробовал шаги, описанные в PHP: Руководство по установке (сообщение: samantha dot vincent at gmail dot com) включая изменение моего apache-http.conf, что также не помогло.
Я также смущен своим phpinfo()
-выводом, как он говорит
Configure Command "--with-pdo-oci=c:\php-sdk\oracle\x86\instantclient_12_1\sdk,shared" "--with-oci8-12c=c:\php-sdk\oracle\x86\instantclient_12_1\sdk,shared"