如何在Linux环境下使用PHP 8.0读取Firebird 1.5数据库?
PHP8.0 适配 Firebird 1.5 的 pdo_firebird 扩展获取方案
- 优先通过系统软件源安装对应扩展包
报错的核心原因是仅在php.ini开启了扩展配置,但实际系统中没有安装对应的扩展二进制文件,无需单独去第三方站点查找so文件:- Debian/Ubuntu 系列发行版执行命令:
apt install php8.0-pdo-firebird - RHEL/CentOS/Fedora 系列发行版开启Remi源后执行命令:
dnf install php80-php-pdo-firebird
安装完成后扩展会自动存放到PHP默认的扩展目录,无需手动修改路径。
- Debian/Ubuntu 系列发行版执行命令:
- 源无适配包时自行编译扩展
如果你的系统软件源没有对应PHP版本的pdo_firebird包,可自行编译生成匹配的so文件:- 先安装Firebird客户端开发依赖:Debian系装
libfbclient-dev,RHEL系装firebird-devel - 下载和你当前使用的PHP8.0小版本完全一致的PHP源码包,解压后进入
ext/pdo_firebird目录 - 依次执行
phpize、./configure --with-pdo-firebird、make && make install,编译完成后生成的pdo_firebird.so会自动写入PHP扩展目录
- 先安装Firebird客户端开发依赖:Debian系装
- 兼容性说明
官方pdo_firebird扩展本身向下兼容Firebird 1.5版本,只需保证你系统安装的libfbclient客户端库支持Firebird 1.5的通信协议即可,无需找专门适配旧版Firebird的扩展版本。 - 验证方法
操作完成后重启php8.0-fpm服务,执行php -m | grep pdo_firebird,无报错且正常输出扩展名称即为加载成功。
内容的提问来源于stack exchange,提问作者DevonDahon
相关产品推荐
相关产品推荐

