猿问

在 PHP 或 XAMPP 中找不到 Firebird 驱动程序

当我用它开始我的第一个 PHP 项目时,我在尝试连接到 firebird 数据库时浪费了一天的时间,所以我想分享我的解决方案,也许可以在将来帮助其他人(或我自己)。



杨__羊羊
浏览 142回答 2
2回答

HUX布斯

规则很少,但非常重要:检查您的 PHP 架构(32 位或 64 位)检查数据库版本(如果您有一个.fdb文件可供启动)以获得适合您的数据库的正确 dll 版本(否则您将无法连接到它)。这是西班牙语,但您可以看到一些有用的命令。例如:我有一个来自安装了 Firebase 2.1 的系统的 .fdb文件。我尝试使用 Firebird 3.0 客户端 dll 但无法连接,然后尝试使用 2.5 并成功)。了解 DB 版本和 PHP 架构,从Firebird 下载中选择正确的版本(32 o 64)。安装DB服务器(您可以在64位SO/PHP上安装32位服务器,此时没有问题)。尝试连接到它(您可以使用 Dbeaver 等 SQL 管理器创建文件.fdb 并测试连接)。现在您知道它正在工作,是时候配置 PHP 了。在 php.ini 中取消注释 firebird pdo 扩展 (extension=pdo_firebird)。获取客户端库:如果您安装了与 PHP 版本相同架构的 Firebird 服务器,您可以直接从主 Firebase 文件夹(例如:C:\Program Files (x86)\Firebird\Firebird_2_0\bin)获取 firebird dll (fbclient.dll) 和复制到 php 文件夹(例如:C:\php)。如果您的 Firebird 服务器与 PHP 架构不匹配,那么您可以从 firebirdsql.org 获取包含 PHP 架构的 ZIP 包,然后将 fbclient.dll 从其中获取到 php 文件夹。如果您使用的是 XAMPP,请将相同的 dll 添加到文件夹 C:\xampp\apache\bin 以避免出现此错误PHP警告:PHP启动:无法加载动态库'pdo_firebird'(尝试过:C:\ xampp \ php \ ext \ pdo_firebird(找不到指定的模块。),C:\ xampp \ php \ ext \ php_pdo_firebird.dll (指定的模块无法找到。))现在,使用 phpinfo,您将在 PDO 驱动程序部分看到 firebird PDO 驱动程序处于活动状态。

弑天下

我遇到了同样的问题,让 php 加载 pdo_firebird 的唯一方法是将 fbclient.dll 64 位和 php_pdo_firebird.dll 放在 windows\system32 中。使用xampp 8
随时随地看视频慕课网APP
我要回答