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 相关文章推荐
php中实现记住密码自动登录的代码
Mar 02 PHP
php实现快速排序的三种方法分享
Mar 12 PHP
php获取QQ头像并显示的方法
Dec 23 PHP
php简单分页类实现方法
Feb 26 PHP
浅析php设计模式之数据对象映射模式
Mar 03 PHP
Laravel执行migrate命令提示:No such file or directory的解决方法
Mar 16 PHP
手把手编写PHP框架 深入了解MVC运行流程
Sep 19 PHP
php监测数据是否成功插入到Mysql数据库的方法
Nov 25 PHP
Docker配置PHP开发环境教程
Dec 21 PHP
PHP通过curl获取接口URL的数据方法
May 31 PHP
centos7上编译安装php7以php-fpm方式连接apache
Nov 08 PHP
解决laravel groupBy 对查询结果进行分组出现的问题
Oct 09 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 分页类 扩展代码
2009/06/11 PHP
PHP中使用cURL实现Get和Post请求的方法
2013/03/13 PHP
基于php split()函数的用法详解
2013/06/05 PHP
PHP根据图片色界在不同位置加水印的方法
2015/07/01 PHP
Laravel 实现密码重置功能
2018/02/23 PHP
PHP7 mongoDB扩展使用的方法分享
2019/05/02 PHP
php apache开启跨域模式过程详解
2019/07/08 PHP
php使用event扩展的io复用测试的示例
2020/10/20 PHP
Firefox/Chrome/Safari的中可直接使用$/$$函数进行调试
2012/02/13 Javascript
js对象基础实例分析
2015/01/13 Javascript
Javascript核心读书有感之词法结构
2015/02/01 Javascript
Jquery跨浏览器文本复制插件Zero Clipboard的使用方法
2016/02/28 Javascript
jQuery无刷新上传之uploadify3.1简单使用
2016/06/18 Javascript
轻松掌握JavaScript装饰者模式
2016/08/27 Javascript
Vue实现带进度条的文件拖动上传功能
2018/02/23 Javascript
详解微信JS-SDK选择图片遇到的坑
2018/08/15 Javascript
ElementUI radio组件选中小改造
2019/08/12 Javascript
JS回调函数简单易懂的入门实例分析
2019/09/29 Javascript
Electron 打包问题:electron-builder 下载各种依赖出错(推荐)
2020/07/09 Javascript
解决vue+webpack项目接口跨域出现的问题
2020/08/10 Javascript
[02:23]1个至宝=115个英雄特效 最“绿”至宝拉比克“魔导师密钥”登场
2018/12/29 DOTA
Python实现抓取网页并且解析的实例
2014/09/20 Python
Python中Django 后台自定义表单控件
2017/03/28 Python
python数据结构之链表详解
2017/09/12 Python
Sanic框架基于类的视图用法示例
2018/07/18 Python
Python3通过chmod修改目录或文件权限的方法示例
2020/06/08 Python
CSS3实现的闪烁跳跃进度条示例(附源码)
2013/08/19 HTML / CSS
Ralph Lauren拉夫·劳伦美国官网:带有浓郁美国气息的高品味时装品牌
2017/11/01 全球购物
生产文员岗位职责
2014/04/05 职场文书
英文求职信范文
2014/05/23 职场文书
学校感恩节活动策划方案
2014/10/06 职场文书
《法国号》教学反思
2016/02/22 职场文书
如何用JS实现网页瀑布流布局
2021/04/24 Javascript
聊聊SpringBoot自动装配的魔力
2021/11/17 Java/Android
手把手带你彻底卸载MySQL数据库
2022/06/14 MySQL
Python 读取千万级数据自动写入 MySQL 数据库
2022/06/28 Python