gpt4 book ai didi

php_oci8_11g.dll 不是有效的 Win32 应用程序

转载 作者:行者123 更新时间:2023-12-03 19:54:12 25 4
gpt4 key购买 nike

这个话题已经被问过好几次了,但每个解决方案都没有在我的机器上工作。

我正在尝试将 Windows 7 与 10G oracle dabatase 连接,但未加载 oci 扩展。这里有一些事实:
C:\php>php -m

PHP Warning: PHP Startup: Unable to load dynamic library 'C:\php\ext\php_oci8_11g.dll' - %1 is not a valid Win32 application.


C:\php>php -v
PHP 5.6.19 (cli) (built: Mar  2 2016 20:09:42)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
  • 64x 架构
  • TS VC11
  • C:\>tnsping localdb
    TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Production on 02-AUG-2
    016 22:37:50

    故障排除
  • 我正在使用 oci8 2.0.11 .把它们丢在 ext/折叠。其余的扩展程序加载得很好。
  • PATH 变量包含 ORACLE_HOME 和 php 路径
  • 只需查找所需的 oracle dll 文件,它们就在那里:
    C:\>where oci*
    C:\oracle\product\10.2.0\db_2\BIN\oci.dll
    C:\oracle\product\10.2.0\db_2\BIN\ocijdbc10.dll
    C:\oracle\product\10.2.0\db_2\BIN\ociw32.dll
  • 我这边不需要Oracle Client,因为数据库安装在同一台机器上,它安装了所有需要的库

  • 我还缺少什么?先感谢您

    最佳答案

    几个月后,我找到了解决方案。考虑以下基础设施:

  • Windows Server 2012 R2 标准版 x64
  • Apache/2.4.18 (Win64) VC11
  • PHP 5.6.19 x86 VC11 TS

  • 下载 Oracle Instant Client 时要特别注意:
  • 无论您的服务器是 x64 还是 x86 架构,都必须下载 32 位
  • 如您所见,PHP 是在 VC11 中编译的,因此您 必须使用 VC11 源下载 OIC,这可以确认解压缩下载的文件并检查文件夹 vc11 是否存在。

  • 这两个细节都非常重要。一旦我满足这两个要求,错误就消失了,我现在可以通过 PHP 成功连接到 Oracle

    关于php_oci8_11g.dll 不是有效的 Win32 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38709005/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com