本文介绍如何在64位Windows上安装32位PHPOCI8扩展和OracleInstantClient。环境配置:PHP版本5.532位Windows764位Oracle11g客户端Apache2.4在Windows上启用PHPOCI8扩展。OCI8是一个PHP扩展,一般默认不启用,用于连接Oracle数据库。无论使用哪种方式,无论是pdo还是windows直连,都需要oci8扩展名。如果配置了PHP系统环境变量,可以使用cmd>php--rioci8命令查看oci8扩展是否开启。php--rioci8安装OCI8首先下载OCI8的扩展http://pecl.php.net/package/o...我这里下载的版本是5.5ThreadSafe(TS)x86版本注:版本分为ThreadSafe和NonThreadSafe(区别可以自行百度),一般Apache选择ThreadSafe,不放心的可以用phpinfo看看,在PHPExtensionBuild一栏显示。为什么选择x86版本?因为我的php是32位的,所以扩展名也必须是32位的。下载后解压php_oci8.dll文件,复制到php.ini中extension_dir=xxxxxx指定的PHP扩展目录下。如果你的系统是64位的,你可以相应地下载x64版本。如果启动apache时提示php_oci8isnotavalidwin32program,肯定是版本错误,下一个正确。安装Oracle客户端OracleInstantClient是一组免费的、易于安装的库,允许程序连接到本地或远程Oracle数据库实例。很多教程直接加扩展,忽略了oracle客户端的安装。这样PHP系统就会报程序输入点OCILobRead2无法定位到动态链接库OCI.dll上。显然,Windows找不到oci.dll文件。首先下载oracle客户端完http://www.oracle.com/technet...我这里下载的是instantclient-basic-win32-11.1.0.6.0.zip版本,注意下载和php匹配的版本,如果你的php是32位的oracle那也有3??2位的。下载后,里面有文件oci.dll。当php扩展启动时,oracle文件就是你要找的。那php是怎么找到这个dll的呢?添加系统环境变量。我不会说如何添加它。有需要请留言。最后,取消php.ini文件中php_oci8.dll的注释,重启Apache,去掉下面这行代码前的分号:extension=php_oci8.dll
