php连接oracle数据库的方法(测试成功)


Posted in PHP onMay 26, 2016

本文简单分析了php连接oracle数据库的方法。分享给大家供大家参考,具体如下:

PHP提供了两套函数与Oracle连接,分别是ORA_和OCI函数。其中ORA_函数略显陈旧。OCI函数更新据说更好一些。两者的使用语法几乎相差无几。你的PHP安装选项应该可以支持两者的使用。

由于OCI函数访问oracle8以上的数据库需要用到Oracle8 Call-Interface(OCI8),这个扩展模块需要oracle8的客户端函数库,因此需要连接远程数据库的话,还需要连接端安装oracle客户端软件,可以到http://www.oracle.com免费下载,这是必须的,否则会报方法未定义错。

步骤:

1、安装apache和php。
2、安装Oracle 10g Instant Client(或其他版本)。
2、在php.ini中打开extension=php_oci8扩展。
3、将php/ext目录下的php_oci8.dll文件拷贝到system32目录下。
4、编写测试脚本测试。

<?php
$conn = oci_connect('用户名', '密码', '远程数据库名(eg.//192.168.1.133/orcl)');
if (!$conn) {
  $e = oci_error();
  print htmlentities($e['message']);
  exit;
}else {
  echo "连接oracle成功!";
}
?>

可能出现的错误:

1、call to undefined function oci_connect()......:这是因为没找到php_oci8.dll,检查apache的错误日志error.log可能会看到:php startup :unable to load dynamic liberaries php_oci8.dll......

解决方法:将php/ext目录下的php_oci8.dll文件拷贝到system32目录下,如果还不行,将Oracle 10g Instant Client安装目录下/product/10.2.0/db_2/BIN目录中的oci.dll文件拷贝到system32下。

2、OCIEnvNlsCreate() failed....... PATH includes the directory with Oracle Instant Client libraries

解决方法:重启机器,如果还不行,安装Oracle 10g Instant Client。

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP5.2中date()函数显示时间与北京时间相差8小时的解决办法
May 28 PHP
深入PHP数据缓存的使用说明
May 10 PHP
基于PHP读取csv文件内容的详解
Jun 18 PHP
微信公众平台天气预报功能开发
Jul 06 PHP
typecho插件编写教程(四):插件挂载
May 28 PHP
如何把php5.3版本升级到php5.4或者php5.5
Jul 31 PHP
图文详解phpstorm配置Xdebug进行调试PHP教程
Jun 13 PHP
laravel中的错误与日志用法详解
Jul 26 PHP
header与缓冲区之间的深层次分析
Jul 30 PHP
thinkPHP5.0框架整体架构总览【应用,模块,MVC,驱动,行为,命名空间等】
Mar 25 PHP
PHP分页显示的方法分析【附PHP通用分页类】
May 10 PHP
Yii框架 session 数据库存储操作方法示例
Nov 18 PHP
PHP封装的MSSql操作类完整实例
May 26 #PHP
PHP简单操作MongoDB的方法(安装及增删改查)
May 26 #PHP
基于PHP实现数据分页显示功能
May 26 #PHP
yii2实现根据时间搜索的方法
May 25 #PHP
Yii2框架使用计划任务的方法
May 25 #PHP
提交表单后 PHP获取提交内容的实现方法
May 25 #PHP
PHP中类的继承和用法实例分析
May 24 #PHP
You might like
一段php加密解密的代码
2007/07/16 PHP
探讨:使用XMLSerialize 序列化与反序列化
2013/06/08 PHP
PHP后台备份MySQL数据库的源码实例
2019/03/18 PHP
体验js中splice()的强大(插入、删除或替换数组的元素)
2013/01/16 Javascript
IE6下opacity与JQuery的奇妙结合
2013/03/01 Javascript
jquery validation验证身份证号,护照,电话号码,email(实例代码)
2013/11/06 Javascript
jQuery Mobile的loading对话框显示/隐藏方法分享
2013/11/26 Javascript
实用框架(iframe)操作代码
2014/10/23 Javascript
JavaScript阻止事件冒泡示例分享
2014/12/28 Javascript
javascript框架设计之类工厂
2015/06/23 Javascript
window.location.hash知识汇总
2015/11/09 Javascript
javascript实现html页面之间参数传递的四种方法实例分析
2015/12/15 Javascript
js控制li的隐藏和显示实例代码
2016/10/15 Javascript
jquery实现用户登陆界面(示例讲解)
2017/09/06 jQuery
微信小程序使用checkbox显示多项选择框功能【附源码下载】
2017/12/11 Javascript
基于javascript 显式转换与隐式转换(详解)
2017/12/15 Javascript
vue2.0 computed 计算list循环后累加值的实例
2018/03/07 Javascript
vue 使用 v-model 双向绑定父子组件的值遇见的问题及解决方案
2021/03/01 Vue.js
[07:37]DOTA2-DPC中国联赛2月2日Recap集锦
2021/03/11 DOTA
python 域名分析工具实现代码
2009/07/15 Python
pyqt4教程之widget使用示例分享
2014/03/07 Python
用Python将IP地址在整型和字符串之间轻松转换
2017/03/22 Python
详解Python3操作Mongodb简明易懂教程
2017/05/25 Python
老生常谈Python序列化和反序列化
2017/06/28 Python
基于pytorch的保存和加载模型参数的方法
2019/08/17 Python
Python高级特性 切片 迭代解析
2019/08/23 Python
python输出结果刷新及进度条的实现操作
2020/07/13 Python
python使用yaml 管理selenium元素的示例
2020/12/01 Python
HTML5移动端开发遇见的东西
2019/10/11 HTML / CSS
会计专业自我鉴定范文
2013/12/29 职场文书
2015年度班主任自我评价
2015/03/11 职场文书
大学生村官驻村工作心得体会
2016/01/23 职场文书
分析mysql中一条SQL查询语句是如何执行的
2021/06/21 MySQL
oracle连接ODBC sqlserver数据源的详细步骤
2021/07/25 Oracle
InterProcessMutex实现zookeeper分布式锁原理
2022/03/21 Java/Android
Pandas 数据编码的十种方法
2022/04/20 Python