在最新的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客户端?
答案 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