如何设置OCI从PHP连接到Oracle?

时间:2008-10-27 02:38:40

标签: php oracle oci

在最新的Ubuntu上,我安装了一个正常运行的PHP 5.2.4。我想使用OCI从PHP使用远程Oracle服务器。

我已下载“Instant Client Package - Basic Lite”Link)。我已将包含OCI库的包解压缩到dir,但我不知道如何告诉PHP我想使用这些库。可以预见,我得到了

  

致命错误:在...中调用未定义的函数oci_connect()

运行此代码时:

<?php 
   $conn = oci_connect('hr', 'hrpw', 'someremotehost');
?>

我不想在Oracle支持下重新编译PHP。连接PHP的最快方法是什么,以便我可以使用Oracle?如果我想连接到远程Oracle实例,是否需要任何其他库,如Oracle客户端?

3 个答案:

答案 0 :(得分:4)

您需要PHP扩展,在Ubuntu上尝试以下操作:

(sudo) pecl install oci8

确保你的php.ini(应该有一个用于你的Apache,一个用于cli php)之后包含extension=oci8.so。最后,您必须重新启动Apache并可以通过<?php phpinfo(); ?>确认扩展已加载。

<强>更新

当它要求您提供ORACLE_HOME时输入类似的内容:

  

instantclient,/选择/ ORACLE / instantclient

我认为设置环境变量将是另一种解决方案。 / opt / oracle ...是我把我的Instantclient放进去的路径。我前一段时间跟着一些教程,不幸的是我找不到它了。

HTH

答案 1 :(得分:0)

我认为您需要确保$ ORACLE_HOME / lib32位于$ LD_LIBRARY_PATH中,否则将该目录添加到/etc/ld.so.conf文件中。

答案 2 :(得分:0)

最后,我下载了Zend Core for Oracle,并且运行良好。 http://www.zend.com/en/products/core/for-oracle