Я пытаюсь использовать расширение Firebird в PHP. У меня есть файлы расширения ( php_pdo_firebird.dll, php_interbase.dll
) в моей папке ext
. Я добавляю их в свой файл php.ini
например
... [PHP_PDO_FIREBIRD] extension=php_pdo_firebird.dll [PHP_INTERBASE] extension=php_interbase.dll ...
phpinfo
не phpinfo
говоря, что расширения не могут быть загружены, и все же всякий раз, когда я печатаю свою phpinfo
я не вижу ни одного из них. Что мне здесь не хватает?
Для чего это стоит, я запускаю PHP версии 5.3.14 TS, используя Apache 2.2 в Windows 7.
Редактирование. Кажется, что некоторые ошибки регистрируются, это только то, что мой параметр error_log
был перезаписан (для тех, кто видит это, дважды проверьте C: \ Windows \ Temp \ php-errors.log). Теперь он говорит мне, что указанные модули не могут быть найдены, когда файл явно существует.
PHP Warning: PHP Startup: Unable to load dynamic library 'C:\Program Files (x86)\PHP\ext\php_pdo_firebird.dll' - The specified module could not be found. in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library 'C:\Program Files (x86)\PHP\ext\php_interbase.dll' - The specified module could not be found. in Unknown on line 0
Догадаться! Хорошо, сначала, чтобы убрать основы:
ext
. extension_dir
. Это применимо только в том случае, если значение не «завернуто в кавычки». Теперь о перевороте благодати. Это сообщение об ошибке чрезвычайно вводит в заблуждение. На данный момент это должно найти ваши библиотеки DLL, но отсутствует fbclient.dll
деталь: fbclient.dll
которая может быть найдена в папке bin
вашей установки Firebird. Всюду, где я читал, прежде чем было сказано разместить fbclient.dll
в папке ext
но он работает только в том случае, если вы поместите его в корень вашей папки PHP
.
Надеюсь, это поможет будущим своенравным душам 🙂