php dynamic library,PHP Startup: Unable to load dynamic library 问题。

PHP Startup: Unable to load dynamic library … (tried:… 这种算是比较常见的问题,

当然这里只讨论在保证 php.ini 中启用了相关扩展,并且相应的.dll文件确实存在于加载目录中的情况。

我个人遇到的是’pdo_firebird’和 ‘pdo_oci’.

D:\Tool\php\php-7.2.7-Win32-VC15-x64>php

Warning: PHP Startup: Unable to load dynamic library 'pdo_firebird' (tried: D:\Tool\php\php-7.2.7-Win32-VC15-x64\ext\pdo_firebird (找不到指定的模块。), D:\Tool\php\php-7.2.7-Win32-VC15-x64\ext\php_pdo_firebird.dll (找不到指定的模块。)) in Unknown on line 0

Warning: PHP Startup: Unable to load dynamic library 'pdo_oci' (tried: D:\Tool\php\php-7.2.7-Win32-VC15-x64\ext\pdo_oci (找不到指定的模块。), D:\Tool\php\php-7.2.7-Win32-VC15-x64\ext\php_pdo_oci.dll (找不到指定的模块。)) in Unknown on line 0

昨天还好好的没有报错,今天就开始报错了。。重装php也没有用。

前者,通过

PHP Startup: Unable to load dynamic library php_pdo_firebird.dll : The Official Microsoft IIS Forums

中的描述,向php主目录中添加一个fbclient.dll可以解决。

实测的确消除了报错,只是需要下载和php对应版本的firebird.

但问题在于,php主目录下本来没有这个fbclient.dll也是可以正常工作的。所以这算是某种变通的补救措施(甚至可能仅仅是阻止了php报错)。

至于后者,根据

PHP unable to load dynamic library “php_pdo_oci.dll” – Stack Overflow

中的说法,需要安装Oracle Instant Client.

(Oracle官网需要注册才能下载,注册基本上都是必填项。。注册成功之后不能登录,过了好久才同步为登录状态。。)。

实测有效。但需要的究竟是其中哪一部分组件不明。

其他的一些什么方法,什么将ext目录加入环境变量之类的试过了,无效。

我非常想了解:

1.如何真正解决这两个问题?

2.如何解决类似的扩展加载失败问题,有没有什么实用的经验?

3.是什么原因导致此类情况发生?

为什么会有系统.dll文件甚至运行库组件丢失的情况?

(从昨天到今天并未浏览危险网站,除了php报错也没有发现其他任何疑似中毒的现象)

欢迎各位提供意见和思路。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值