我试图在php上加载oracle扩展但是我遇到错误:
警告:PHP启动:无法加载动态库' D:\ Program Files \ xampp \ php \ ext \ php_oci8.dll' - 找不到指定的程序。 0
到目前为止我已经完成了:
extension_dir
指向正确的位置extension=php_oci8.dll
上确定答案 0 :(得分:7)
将文件orannzsbb11.dll,oci.dll和oraociei11.dll复制到c:\ windows \ system32
解决了问题答案 1 :(得分:2)
我通过在我的Windows PATH环境变量中添加“C:\ Program Files(x86)\ PHP \ v5.3 \ ext”解决了这个问题。如果升级PHP,您只需要记住更改路径。我认为这比复制dll更好,如果你最终在同一台机器上安装了不同版本的多个dll,那么可能会导致问题。
答案 2 :(得分:2)
您需要从此超链接http://www.oracle.com/technetwork/topics/winsoft-085727.html下载Oracle Instant Client。 在用户环境vriables和系统变量上添加即时客户端的路径。
答案 3 :(得分:1)
对我来说,这是因为没有安装Visual Studio 2008 SP1(适用于VC9)的Visual C ++ Redistributable。我必须得到x64包,因为我正在运行Windows 7 64位。希望这可以帮助有同样问题的人。安装后,PHP不再报告这些错误。
答案 4 :(得分:1)
我发现这个问题背后的主要原因是oracle的oci8驱动程序版本。最后,我能够连接到oracle以及我在http://angularcode.com/connecting-php-to-oracle-database-10g/
所描述的步骤答案 5 :(得分:1)
对某些人来说可能非常明显,但最初并不适合我:如果您仍然看到此The specified procedure could not be found. in Unknown on line 0
错误,即使在安装了即时客户端,SDK等之后 - 请确保放置Oracle 系统“PATH”变量中的即时客户端路径,而不是用户变量,因为当Apache运行时,用户显然不会使用它。您可以通过查看phpinfo()输出中显示的PATH值来验证是否正确设置了即时客户端路径。