У меня Windows XP, и недавно я установил 32-разрядную версию wamp (apache-mysql-php). Я протестировал установку (подключиться к базе данных mysql с php и apache), и все работает нормально.
Теперь мне нужно подключиться к базе данных Oracle, поэтому я попытался включить некоторые расширения, связанные с Oracle и oci8 .
И я сделал:
1) Я открыл файл php.ini и удалил точки с запятой до следующих строк:
до:
;extension=php_oci8.dll ;extension=php_oci8_11g.dll
после:
extension=php_oci8.dll extension=php_oci8_11g.dll
2) Я перезапустил apache и все службы, и я получил
3) В файле php_error.log я получаю:
**PHP Warning: PHP Startup: in Unknown on line 0**
Итак, я подумал, что было бы неплохо проверить, где находится моя php-папка расширения, и если эти DLL-файлы есть.
В php.ini моя папка расширения находится по адресу:
extension_dir = "C:/wamp/bin/php/php5.4.16/ext/"
Папка существует, и обе эти библиотеки (php_oci8.dll php_oci8_11g.dll) находятся внутри этой папки.
4) Я добавил в свою системную переменную «Путь» в Windows следующее:
C:\wamp\bin\php\php5.4.16\ext;
5) Я скопировал оба этих файла dll в папке Apache, но снова это не сработало!
C:\wamp\bin\apache\Apache2.4.4\bin
6) Кроме того, я проверил страницу phpinfo, и единственная запись, которую я получаю для «oci8», следующая:
Настроить команду
"--with-oci8=C:\php-sdk\oracle\instantclient10\sdk,shared" "--with-oci8-11g=C:\php-sdk\oracle\instantclient11\sdk,shared"
Hm … в моей системе не существует следующих папок:
C:\php-sdk\oracle\instantclient10\sdk C:\php-sdk\oracle\instantclient11\sdk
Итак, что я должен делать дальше, чтобы правильно включить расширения oci8?
благодаря
[Решено]
Я загрузил пакет Instant Client – Basic (версия 10.2.0.5), и я его извлек.
Впоследствии я скопировал все файлы этого пакета в следующих папках:
C:/wamp/bin/php/php5.4.16/ext/ C:/wamp/bin/apache/Apache2.4.4/bin
Это сработало для меня таким образом. После этого был загружен модуль oci8.
При загрузке instantclient убедитесь, что в архитектуре установлен wamp.
В моем случае instantclient загрузил x64, но установил x32 и имел проблемы.
Загрузила правильную архитектуру, и она отлично работала.