gpt4 book ai didi

php - 无法加载动态库 'C:\xampp\php\ext\php_oci8.dll' - %1 不是有效的 Win32 应用程序

转载 作者:行者123 更新时间:2023-12-03 20:20:15 24 4
gpt4 key购买 nike

启动 xampp 服务器时出现此错误。

C:\xampp\php\ext\php_oci8.dll' - %1 is not a valid Win32 application.



我下载了 php_oci8-2.0.8-5.6-ts-vc11-x86并提取 php_oci8.dll进入 C:\xampp\php\ext目录。

另外,我下载了 instantclient-basic-nt-12.1.0.2.0 (32 位版本)并将相同的内容添加到 windows 的 PATH 变量中。
C:\OracleBasicClient\instantclient-basic-nt-12.1.0.2.0\instantclient_12_1添加到路径

尽管如此,我还是收到了这个错误,不知道为什么会这样。

我的 Windows 是 64 位的。

PHP 信息 (xampp)

系统 Windows NT 6.1(Windows 7 专业版)i586
编译器 MSVC11 (Visual C++ 2012)
建筑 x86
线程安全 启用

我可能做错了什么,我该如何解决?

最佳答案

您的错误显示内置类型不匹配。

按照以下步骤解决:

确保下载并安装 oracle 即时客户端在:http://www.oracle.com/technetwork/topics/winsoft-085727.html ,但请注意:

  • 记下您的 甲骨文 数据库版本;使用 版本 12.1.x 适用于 Oracle 数据库 12c 版本 11.1.x 11g 发布。
  • 无论哪种情况,请确保下载 基础精简版 Oracle 即时客户端的版本。

  • 之后,将 Oracle 即时客户端的位置添加到环境变量下的系统变量路径中。同样确保您拥有 的 PHP。 xampp 和它的 分机 可用并设置在那里(如果没有,请添加它们)。

    然后,继续添加一个新的系统变量 TNS_ADMIN 作为变量名和 Oracle 即时客户端的位置 作为变量值。

    此外,使用相同的 定义您的用户变量 PATH Oracle 即时客户端的位置 作为值(value)。

    在此阶段之后,重新启动计算机以完全传播新定义的环境变量。

    打开后,您可以打开 Windows 命令提示符并运行 其中 oci* 确保您已定义好环境变量;响应应如下所示:
    C:\Users\flex>where oci*

    C:\oraclexe\app\oracle\product\11.2.0\server\bin\oci.dll
    C:\oraclexe\app\oracle\product\11.2.0\server\bin\ocijdbc11.dll
    C:\oraclexe\app\oracle\product\11.2.0\server\bin\ocijdbc11.sym
    C:\oraclexe\app\oracle\product\11.2.0\server\bin\ociw32.dll
    C:\instantclient_11_2\oci.dll
    C:\instantclient_11_2\oci.sym
    C:\instantclient_11_2\ocijdbc11.dll
    C:\instantclient_11_2\ocijdbc11.sym
    C:\instantclient_11_2\ociw32.dll
    C:\instantclient_11_2\ociw32.sym

    如果没有,您一定错过了一些东西,需要重新审视这个过程,确保有效地完成它。

    您现在可以继续处理您的 php.ini 文件(前提是环境变量定义良好)并启用您的 oci 通过取消注释扩展(php_oci8.dll 和 php_oci8_11g.dll);您可以通过简单地删除上述扩展之前的半列( )来实现这一点。

    请记住保存您的 php.ini 文件,然后重新启动或启动您的 apache(如果它尚未运行)。

    要检查您的 PHP oci8 配置是否已启用,您可以返回 Windows 命令提示符并运行: php --ri oci8 ;响应应与以下类似:
    C:\Users\flex>php --ri oci8

    OCI8 Support => enabled
    OCI8 DTrace Support => disabled
    OCI8 Version => 2.1.1
    Revision => $Id: 86f22a208f89dcd5b305e82929a7429683968b11 $
    Oracle Run-time Client Library Version => 11.2.0.4.0
    Oracle Compile-time Instant Client Version => 10.2

    Directive => Local Value => Master Value
    oci8.max_persistent => -1 => -1
    oci8.persistent_timeout => -1 => -1
    oci8.ping_interval => 60 => 60
    oci8.privileged_connect => Off => Off
    oci8.statement_cache_size => 20 => 20
    oci8.default_prefetch => 100 => 100
    oci8.old_oci_close_semantics => Off => Off
    oci8.events => Off => Off

    Statistics =>
    Active Persistent Connections => 0
    Active Connections => 0

    或者,您可以使用 <?php phpinfo(); ?> 创建一个 PHP 文件。作为内容,然后在浏览器中打开它并搜索 oci8 事件;它也应该在那里显示启用。

    关于php - 无法加载动态库 'C:\xampp\php\ext\php_oci8.dll' - %1 不是有效的 Win32 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33220825/

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