[英]PHP Startup: Unable to load dynamic library
我正在嘗試使用Firebird 2.5.2.26539:
當我在php中啟用firebird的擴展時:
- extension=php_interbase.dll
- extension=php_pdo_firebird.dll
我收到這些錯誤:
[2012年12月26日12:08:11 UTC] PHP警告:PHP啟動:無法加載動態庫'C:\\ Program Files(x86)\\ PHP \\ ext \\ php_interbase.dll' - 無法找到指定的模塊。 在第0行的未知中
[26-Dec-2012 12:08:13 UTC] PHP警告:PHP啟動:無法加載動態庫'C:\\ Program Files(x86)\\ PHP \\ ext \\ php_pdo_firebird.dll' - 無法找到指定的模塊。 在第0行的未知中
如果我在命令行中使用PHP -a,則錯誤消息不同:找不到fbclient.dll。
我運行了flamerobin並打開了數據庫。 所以我將fbclient.dll復制到PHP根路徑。 然后錯誤變為:
[2012年12月26日11:55:46 UTC] PHP警告:PHP啟動:無法加載動態庫'C:\\ Program Files(x86)\\ PHP \\ ext \\ php_interbase.dll' - %1不是有效的Win32應用。 在第0行的未知中
[2012年12月26日11:55:46 UTC] PHP警告:PHP啟動:無法加載動態庫'C:\\ Program Files(x86)\\ PHP \\ ext \\ php_pdo_firebird.dll' - %1不是有效的Win32應用。 在第0行的未知中
任何人都可以幫我這個嗎? 我懷疑這個版本的Firebird仍然沒有為PHP做出正確的擴展。 謝謝。
我正在重復Nenhum Pois以上的評論(有些人可能會錯過),因為它是問題的真正解決方案:
問題是來自FB 64位安裝的fbclient.dll。 我剛從32位獲得fbclient.dll,將其復制到PHP根目錄,它解決了問題
Cli和Apache PHP運行兩個不同的配置文件。 這將解釋CLI模式中缺少的錯誤消息。 可能性是此應用程序的擴展,而不是存儲在PHP擴展文件夾中。 我不熟悉Windows下的配置,因此您可能需要谷歌搜索Windows PHP擴展目錄並確保您的擴展文件存在。
根據您的錯誤判斷路徑是“C:\\ Program files(x86)\\ PHP \\ ext \\
在嘗試加載擴展文件之前,請確保您的擴展文件存在。
如果在Windows上運行,請檢查您的擴展是否使用與PHP解釋器相同的Visual Studio編譯器版本進行編譯。
從PHP下載頁面https://windows.php.net/download
雖然示例的MongoDB擴展是使用VC11編譯的,但請參閱https://pecl.php.net/package/mongo/1.6.16/windows並檢查-vc11-
的DLL列表文件名
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.