本文介紹如何在64位 Windows 上安裝32位 PHP 的 OCI8 擴展和 Oracle Instant Client 的詳細教程php
環境配置:html
OCI8 是 PHP 擴展,通常默認不開啓,用於鏈接到 Oracle 數據庫,不管你是用哪一種方式,pdo也好仍是Windows直連也好,都須要oci8這個擴展。 若是配置了PHP系統環境變量能夠用 cmd> php --ri oci8 命令來檢查是否啓用了oci8擴展。數據庫
php --ri oci8
首先下載OCI8的擴展 http://pecl.php.net/package/o... 我這裏下的版本是5.5 Thread Safe (TS) x86 版本
注意:版本分爲 Thread Safe 和 Non Thread Safe(其間區別可自行百度),通常Apache都選擇Thread Safe,若是不放心能夠用phpinfo看一下,在PHP Extension Build一欄有顯示。apache
爲何選擇下x86版本的呢?由於個人php是32位的因此擴展也必須下32位的。下載完後,解壓php_oci8.dll文件,拷貝到PHP擴展目錄下,擴展目錄在php.ini中 extension_dir = xxxxxx 指定。若是你的系統是64位則對應下載x64的版本便可。windows
若是啓動apache時提示php_oci8不是有效的win32程序,那確定是版本搞錯了,下個正確的便可。oracle
Oracle Instant Client 是一組可輕鬆安裝的免費庫,容許程序鏈接到本地或遠程 Oracle 數據庫實例。ui
不少教程都直接添加擴展而忽略了oracle客戶端的安裝,這樣php系統會報沒法定位程序輸入點OCILobRead2 於動態連接庫OCI.dll上,很明顯嘛,Windows找不到oci.dll文件.net
首先下載oracle客戶端 http://www.oracle.com/technet... 我這裏下的是 instantclient-basic-win32-11.1.0.6.0.zip 版本,注意必定要下與php相匹配的版本,若是你的php是32位的那oracle也要下32位的。code
下載完后里面有oci.dll 這個文件,當啓動了php的擴展後,找的也就是這個 oracle 文件。那 php 怎麼找這個dll呢,加系統環境變量嘛,怎麼加就不說了,須要的話留言吧。htm
最後,取消 php.ini 文件中php_oci8.dll的註釋而後重啓 Apache 便可
刪除如下代碼行前的分號: extension=php_oci8.dll