与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
答案 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');