1、在php.ini中開啟 extension=php_oci8.dll extension=php_oci8_11g.dll(去掉分號即可)
2、到http://www.oracle.com/technetwork/cn/topics/winsoft-085727.html下載對應的instantclient-basic-win32程序
注意:instantclient-baseic選擇32位還是64位要看運行的php是32位還是64位而定,而不是系統位數
3、下載后將你所下載的instantclient_11_2目錄配置到系統環境變量中(D:\app\rtyrrty\instantclient_11_2)
4、重啟apache用phpinfo便可看到oci8已開啟
說明:oci_connect函數中host代表oracle的IP地址 port代表oracle端口號 sid代表你的實例名
下例中AL32UTF8是表示你數據表中的字符集編碼格式
(通過“select * from V$NLS_PARAMETERS;”可查詢到)
查詢結果中NLS_CHARACTERSET字段便表示你的oracle字符集格式 newcc 123456789表示用戶名稱及密碼
測試代碼:
$conn = oci_connect('newcc','123456789',"(DEscriptION=(ADDRESS=(PROTOCOL =TCP)(HOST=192.168.0.222)(PORT = 1521))(CONNECT_DATA =(SID=orcl)))","AL32UTF8"); if (!$conn){ echo "連接失敗!"; exit(); } $sql = "SELECT BH,XM,GYDWNAME,ZYXZNAME,ZFZTNAME FROM CRIMINAL_BASE_INFO WHERE ROWNUM<6"; $ora = oci_parse($conn,$sql); //編譯sql語句 if (!$ora){ echo "預編譯失敗!"; exit(); } //執行 if (oci_execute($ora)){ while(($row = oci_fetch_assoc($ora)) != false) //取回結果 { echo "<pre>"; echo $row["BH"]." ".$row["XM"]."<br/>"; echo "</pre>"; } }else { echo "執行失敗!"; } if (!(oci_free_statement($ora))) echo "釋放失敗!"; if (!oci_close($conn)) echo "關閉失敗!";