У меня следующие строки без комментариев (в моем 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-Dec-2011 00:36:39] PHP Предупреждение: запуск PHP: невозможно загрузить динамическую библиотеку 'c: \ php \ ext \ php_oci8.dll' – указанный модуль не найден. в Unknown в строке 0
[29-Dec-2011 00:36:39] PHP Предупреждение: запуск PHP: невозможно загрузить динамическую библиотеку 'c: \ php \ ext \ php_oracle.dll' – указанный модуль не найден.
Что нужно проверить:
Вам не нужно устанавливать LD_LIBRARY_PATH
или ORACLE_HOME
. Однако вам необходимо добавить D:\instantclient_11_2
в PATH
окружения PATH
и перезагрузить компьютер, чтобы изменения изменились.
Прежде чем настраивать PHP, убедитесь, что ваши клиентские библиотеки Oracle фактически работают (например, попробуйте подключиться к SQL Developer).
Прокомментируйте extension=php_oracle.dll
. Он относится к устаревшему и устаревшему расширению Oracle.
Двойная проверка, что файл php_oci8.dll
действительно находится в c:\php\ext\php_oci8.dll
?
Вы перезапустили apache после размещения файла php_oci8.dll
в вашем каталоге php/ext
?
Возможно, вы можете использовать этот учебник, я успешно сконфигурировал мое соединение оракула с этим. http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=3&ved=0CDgQFjAC&url=http%3A%2F%2Fssk3408inventory.googlecode.com%2Ffiles%2FHow%2520to%2520enable%2520Oracle% 2520Connection% 2520to% 2520PHP% 2520on% 2520XAMPP.doc & е = VbqmUcKkNMWxrgff5oC4DQ & USG = AFQjCNGx87waqDeExG2DhlwtU4VIEZE8nQ & BVM = bv.47244034, d.bmk
Просто добавьте эту строку в файл php.in, указывающий на расположение расширений, должны знать, где они расположены, но обычно в папке php.
extension_dir = C:\xampp\php\ext ;
это для меня, используя xampp, будьте мудрыми.
Это сработало для меня. Проблема заключается в доступе к расширениям и не имеет ничего общего с библиотеками oracle.