Неустранимая ошибка: вызов неопределенной функции oci_connect () - PullRequest
7 голосов
/ 26 декабря 2011

У меня есть следующие строки без комментариев (в моем php.ini):

extension=php_oracle.dll 
extension=php_oci8.dll

И я скачал этот файл instantclient-basiclite-nt-11.2.0.2.0.zip, разархивировал и положил его на диск D ...

Я использую Windows XP

Я установил переменную окружения так:

LD_LIBRARY_PATH     C:\instantclient_11_2:$LD_LIBRARY_PATH 
ORACLE_HOME     C:\instantclient_11_2 

Но когда я выполняю oci_connect() функцию, я вижу эту ошибку:

Неустранимая ошибка: вызов неопределенной функции oci_connect () в ...

и я нашел это предупреждение в файле erroeLog:

[29.12.2011 00:36:39] Предупреждение PHP: Запуск PHP: невозможно загрузить динамическую библиотеку 'c: \ php \ ext \ php_oci8.dll' - указанный модуль не найден. в Неизвестно в строке 0

[29.12.2011 00:36:39] Предупреждение PHP: Запуск PHP: невозможно загрузить динамическую библиотеку 'c: \ php \ ext \ php_oracle.dll' - указанный модуль не найден.

Ответы [ 3 ]

4 голосов
/ 26 декабря 2011

Вещи для проверки:

  • Вам не нужно устанавливать LD_LIBRARY_PATH или ORACLE_HOME. Однако необходимо добавить D:\instantclient_11_2 в переменную окружения PATH и перезагрузить компьютер, чтобы изменения вступили в силу.

  • Перед настройкой PHP убедитесь, что ваши клиентские библиотеки Oracle действительно работают (например, попробуйте подключиться к SQL Developer).

  • Прокомментируйте extension=php_oracle.dll. Он принадлежит старому и устаревшему расширению Oracle.

  • Дважды проверьте, что файл php_oci8.dll действительно в c:\php\ext\php_oci8.dll?

2 голосов
/ 26 декабря 2011

Перезапускали ли вы apache после помещения файла php_oci8.dll в каталог php/ext?

0 голосов
/ 04 февраля 2014

Просто добавьте эту строку в файл php.in, который указывает на расположение расширений, должен знать, где они расположены, но обычно в папке php.Будь мудрым.

Это сработало для меня.Проблема заключается в доступе к расширениям и не имеет ничего общего с библиотеками Oracle.

...