phporacle客户端oci8安装有什么问题

What is wrong with the installation of php oracle client oci8

我尝试了安装 PHP Oracle 客户端的所有步骤。

1) 我安装了客户端版本 8 和 32 位。

2) 我在 php.ini

中取消注释 oci

3) 重新启动 Wamp:

4) 不确定是否真的安装了,但我在 php.ini:

中得到了参考

5) 但是还是连接不上:

Tyhanks 任何帮助

编辑

在 php 日志中发现这些错误: [2018 年 4 月 16 日 14:35:03 UTC] PHP 警告:PHP 启动:无法加载动态库 'c:/wamp/bin/php/php5.5.12/ext/php_oci8.dll' - %1 不是有效的 Win32 应用程序。

第 0 行未知

[2018 年 4 月 16 日 14:35:03 UTC] PHP 警告:PHP 启动:无法加载动态库 'c:/wamp/bin/php/php5.5.12/ext/php_oci8_11g.dll' - %1 不是有效的 Win32申请。

第 0 行未知

manual告诉你哪里出错了:

  1. 1) I installed the Client version 8 and 32 bits.

    您正在使用不兼容的库。 OCI8 requirements 文档的第一段指出(强调我的):

    The OCI8 1.4 extension is included with PHP 5.3, PHP 5.4 and PHP 5.5. It is also available from PECL. A newer OCI8 2.0 version is available only from PECL. OCI8 1.4 requires Oracle 12c, 11g, 10g or 9iR2 client libraries and will install on PHP 4.3.9 onwards. OCI8 2.0 requires Oracle 12c, 11g or 10g client libraries and will install on PHP 5.2 onwards.

  2. 2) I uncommented oci in php.ini

    您的屏幕截图显示您已启用 php_oci8php_oci8_11g。您应该只启用其中一个扩展,如 OCI8 installation 文档中所述(再次强调我的):

    When using Oracle 10gR2 client libraries on Windows, uncomment the php.ini line extension=php_oci8.dll. When using Oracle 11gR2 or later client libraries, uncomment extension=php_oci8_11g.dll or extension=php_oci8.dll. With Oracle 12c libraries use extension=php_oci8_12c.dll or extension=php_oci8_11g.dll or extension=php_oci8.dll. Only one of these DLLs may be enabled at a time.

  3. 4) Not sure if really installed but I got the references in php.ini:

    已安装已启用,但未正确配置。您的屏幕截图显示了 PHP 是如何编译的以及各种代码作者,而不是关于您当前配置的任何信息。

要使扩展正常工作,请尝试以下操作:

  1. 卸载并删除 'Client version 8'.
  2. 的所有痕迹
  3. 安装 Oracle InstantClient 11g 或 12c。这通常意味着简单地将 .zip 文件解压到一个文件夹中,例如c:\instantclient_12_1.
  4. 在 InstantClient 下载页面上,在 InstantClient 下载 link 之后,在线上有一个 link 所需的 VC++ 运行时。下载并安装它。
  5. 更新您的 PATH 环境变量以包含您提取 InstantClient 文件的位置,例如c:\instantclient_12_1.
  6. php.ini 中启用 php_oci8_11g.dll php_oci8_12c.dll.

可能需要重新启动以确保PATH更改对系统可见。

请注意,WAMP 可能包含多个 php.ini 文件。确保编辑正确的。