与ORACLE连接

时间:2019-07-16 12:48:25

标签: php

与ORACLE进行PHP连接最重要的条件是什么?

我已经在PHP.ini中编写了这些扩展名,但没有用

extension=oci8_12c  ; Use with Oracle Database 12c Instant Client
extension=php_oci8.dll
extension=php_oci8_12c.dll
extension=php_oracle.dll
extension=pdo_odbc
extension=pdo_pgsql

使用的代码

    <?php

    $conn="(DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.9)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = PRD)
      (SERVER = DEDICATED)
    )
    )";
    $conexao = oci_connect('DBA', '123', $conn);

    if (isset ($conexao) || empty($conexao)){
        $erro = oci_error();
        trigger_error(htmlentities($erro['erro'], ENT_QUOTES), E_USER_ERROR);
    exit;
    }

    echo"Hello";

?>

错误

Fatal error: Uncaught Error: Call to undefined function oci_connect() in C:\wamp64\www\Teste\testes\conexaooracle.php on line 12 

Error: Call to undefined function oci_connect() in C:\wamp64\www\Teste\testes\conexaooracle.php on line 12 

1 个答案:

答案 0 :(得分:0)

最重要的是安装Oracle客户端库。如果您的计算机上没有它们,则可以从Oracle Instant Client

获得它们。

解压缩后,设置PATH环境变量以找到它们。

仅取消注释extension行之一以包含OCI8。您可能只需要

extension=oci8_12c  ; Use with Oracle Database 12c Instant Client

这实际上将与12c或更高版本的Oracle Client库一起使用。

http://www.oracle.com/technetwork/topics/php/underground-php-oracle-manual-098250.html的后半部分是有用的PHP Oracle资源

P.S。您可以简化以下连接:

$conexao = oci_connect('DBA', '123', '192.168.0.9/PRD');