我正在尝试连接到未在本地安装但未收到大量错误的oracle数据库。我安装了Windows 8和easyphp,我取消选中oracle连接的扩展名(php_oci8,另一个,类似于此)但我收到了消息:
Call to undefined function oci_connect().
当我启动php时它会给我一个错误
The procedure entry point OCILobRead2 could not be located in the dynamic link library ...php_oci8.dll
然后在网上看了一些后,我看到我必须安装oracle数据库或oracle instantclient。安装了两个,oracle数据库11g2没有工作(我想这是因为我的Windows 8),oracle数据库12确实安装但后来我什么也做不了,我仍然有消息。然后,在安装之前,我找到一个建议安装xamp 1.7.3和oracle即时客户端的在线文档。这样做,将我的环境路径设置为即时客户端,但仍然没有发生任何事情......仍然得到与上述相同的错误。
还尝试了其他功能,如ocilogon(折旧),但我收到同样的错误。任何帮助都会被贬值。
答案 0 :(得分:1)
您需要确保在PHP目录中为您的PHP版本提供php_oci8.dll
,然后确保它列在您的php.ini
文件中。 PHP网站上还有一个关于此的重要说明。
http://www.php.net/manual/en/oci8.requirements.php
在Windows上,php_oci8 DLL需要Oracle客户端库 版本10gR2或更高版本。在PHP 5.3中,包括PHP 5.3.5, php_oci8_11g DLL需要Oracle 11gR1或更高版本的客户端 库。从PHP 5.3.6开始,php_oci8_11g DLL需要Oracle 11gR2 或更大的客户端库。来自PECL的php_oci8_12c DLL需要 Oracle 12cR1客户端库。使用某些版本的Instant Client 您可能还需要mfc71.dll和msvcr71.dll库。