> 백엔드 개발 > PHP 튜토리얼 > php联接访Oracle是用过oci函数

php联接访Oracle是用过oci函数

WBOY
풀어 주다: 2016-06-13 13:02:53
원래의
1000명이 탐색했습니다.

php连接访Oracle是用过oci函数

php连接访Oracle是用过oci函数,以下是整理的文档

1.安装Apache和php包

yum install -y httpd php*

2.下载Oracle组件

oracle-instantclient-basic-10.2.0.4-1.i386.rpm

oracle-instantclient-sqlplus-10.2.0.4-1.i386.rpm

oracle-instantclient-devel-10.2.0.4-1.i386.rpm

oracle-instantclient-odbc-10.2.0.4-1.i386.rpm

#rpm -ivh oracle-instantclient*(四个组件全部安装上)

此时会生成/usr/lib/oracle/10.2.0.4/client/lib/目录

3.修改/etc/ld.so.conf文件

#vim /etc/ld.so.conf

追加以下内容

/usr/lib/oracle/10.2.0.4/client/lib/

#ldconfig(执行命令)

4.下载OCI8组件

http://pecl.php.net/get/oci8-1.4.1.tgz

#tar zxvf oci8-1.4.1.tgz

5.编辑OCI8模块

#cd oci8-1.4.1

#phpize(执行命令)

#./configure --with-oci8=instantclient,/usr/lib/oracle/10.2.0.4/client/lib/

#make install

成功后系统会提示你:oci8.so已经成功放入/usr/lib/php/modules/目录中

6.修改php.ini文件

#vim /etc/php.ini

追加以下内容

extension=oci8.so

7.重启Apache服务

service httpd restart

8.使用phpinfo()函数查看

码连接测试Oracle数据库


  1. php 
  2.  
  3. $conn = oci_connect('scott', 'oracle', '192.168.12.133/orcl');  
  4.  
  5. if (!$conn) {  
  6.  
  7. $e = oci_error();  
  8.  
  9. print htmlentities($e['message']);  
  10.  
  11. exit;  
  12.  
  13. }  
  14.  
  15. $query = 'select ename,sal from scott.emp';  
  16.  
  17. $stid = oci_parse($conn, $query);  
  18. if (!$stid) {  
  19.  
  20. $e = oci_error($conn);  
  21.  
  22. print htmlentities($e['message']);  
  23.  
  24. exit;  
  25.  
  26. }  
  27.  
  28. $r = oci_execute($stid, OCI_DEFAULT);  
  29. if(!$r) {  
  30.  
  31. $e = oci_error($stid);  
  32.  
  33. echo htmlentities($e['message']);  
  34.  
  35. exit;  
  36.  
  37. }  
  38.  
  39. print 'table border="1">';  
  40.  
  41. while($row = oci_fetch_array($stid, OCI_RETURN_NULLS)) {  
  42.  
  43. print 'tr>';  
  44.  
  45. foreach($row as $item) {  
  46.  
  47. print 'td>'.($item?htmlentities($item):' ').'td>';  
  48.  
  49. }  
  50.  
  51. print 'tr>';  
  52.  
  53. }  
  54.  
  55. print 'table>';  
  56.  
  57. oci_close($conn);  
  58.  
  59. ?> 

最后通过浏览器浏览页面




관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿