2012-12-26 116 views
7

我試圖用火鳥2.5.2.26539有:PHP啓動:無法加載動態庫

  • 的Windows 8
  • 的Apache 2.2.22
  • PHP 5.4.10

當我在php中啓用firebird的擴展:

- extension=php_interbase.dll 
- extension=php_pdo_firebird.dll 

我得到這些錯誤:

[26-Dec-2012 12:08:11 UTC] PHP警告:PHP啓動:無法加載動態庫'C:\ Program Files文件(x86) php_interbase.dll' - 無法找到指定的模塊。 012警察:PHP啓動:無法加載動態庫'C:\ Program Files文件(x86)\ PHP \ ext \ php_pdo_firebird。 DLL' - 不可能找到指定的模塊。 在未知的行0

如果我在命令行中使PHP -a,錯誤消息是不同的:無法找到fbclient.dll。

我運行了flamerobin並打開了數據庫。所以我將fbclient.dll複製到PHP根路徑。 然後錯誤改變爲:

[26日 - 12月2012 11點55分46秒UTC] PHP的警告:PHP啓動:無法加載動態庫「C:\程序文件(x86)\ PHP \分機\ php_interbase.dll' - %1不是有效的Win32應用程序。 012警察:PHP啓動:無法加載動態庫'C:\ Program Files文件(x86)\ PHP \ ext \ php_pdo_firebird。 dll' - %1不是有效的Win32應用程序。 未知在線0

任何人都可以幫助我解決這個問題嗎?我懷疑這個版本的Firebird仍然沒有爲PHP所做的正確擴展。 謝謝。

+0

你確定你沒有使用64位的Apache/PHP,但32位Firebird(反之亦然)? – ain

+0

嘗試將所有這三個文件複製到c:\ windows \ system32 \或apache位文件夾 – newman

回答

1

Cli和Apache PHP運行兩個不同的配置文件。這將解釋CLI模式中缺少的錯誤消息。可能性是未存儲在PHP擴展文件夾中的此應用程序的擴展名。我不熟悉Windows下的配置,因此您可能需要谷歌的Windows PHP擴展目錄,並確保您的擴展文件在那裏。

你的錯誤來看的路徑爲「C:\ Program Files文件(x86)的\ PHP \分機\

請確保您的擴展名的文件有沒有試圖加載它們之前

+0

將新的dll文件移動到擴展文件夾可能會導致一個新的錯誤之前執行的擴展這出現了錯誤更改:) –

+1

你好,在windows中,cli和apache PHP模式有相同的ini文件。另外我在ext目錄中有pdo_firebird和firebird的擴展。問題是不同的。 –

+6

問題是FB 64位安裝中的fbclient.dll。我剛剛從32位獲得了fbclient.dll,將它複製到PHP根目錄並解決了問題。 –

5

我重複。評論(有些可能會錯過),因爲它是問題的真正的解決方案:

問題是fbclient.dll來自FB 64位安裝。我只是得到了fbclient。dll從32位,複製到PHP根,它解決了這個問題

相關問題