同事昨天接到一个任务,要用php处理oracle数据库的内容,但是php打开oracle扩展不是像mysql那样直接用就行,需要下一点东西才能打开

第一步 需要到oracle官方下载一个install client 包,在win下找到你对应系统版本的zip(注意这里是系统版本)

截止到2015-06-25,下载地址如下http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html

例如选择 Instant Client for Microsoft Windows (x64)  因为php扩展的是OCI,所以必须选对应版本的最全的那个,别的都没有OCI,这里下载可能需要有个账号,验证以后就可以下载,直接用连接下载不好用,没有的话注册一下就好了

第二部,需要下载win系统中的扩展包也就是.dll文件  下载地址   http://pecl.php.net/package/oci8   下面一段废话是告诉你怎么找的

http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html 在这个地址下点击

official Instant Client site.  拉到最后 Related Developer Centers 里面点     "PHP - OCI8 extension"

然后选项卡 downloads  点OCI8  到   http://pecl.php.net/package/oci8

然后怎么下载就不多说了

到这里完成下载两个zip包,然后就是配置PHP

第三,解压下载的第一个文件,到电脑任意目录,解压后得到文件目录 instantclient_12 _1  建议把后面的 "_12_1"去掉,以后改版本就不用动环境变量了

进入这个目录后双击打开 adrci.exe

得到如下命令行窗口,证明这个客户端在你本地可用

复制目录,我的是  F:\dev\instantclient  配置到系统的path环境变量,

第四,解压下载的dll的压缩包,复制其中的  php_oci8.dll  php_oci8_11g.dll  php_oci8_12c.dll  我目前就是这三个,到php的扩展包文件,通常是 ....../php/ext/目录下

其实可以不替换,不过建议还是替换一下好,

然后打开php.ini 把扩展打开,最后一个是后来加进去的,php本来没有,反正上面包里有的dll文件都写进去应该错不了,顶多运行php的时候多加载几个库

extension=php_pdo_oci.dll

extension=php_oci8.dll      ; Use with Oracle 10gR2 Instant Client
extension=php_oci8_11g.dll  ; Use with Oracle 11gR2 Instant Client
extension=php_oci8_12c.dll  ; Use with Oracle 12c   Instant Client

然后重启httpd服务,打开 phpinfo(); 应该能看到

PDO support enabled
PDO drivers mysql, oci, odbc
OCI8 Support enabled
OCI8 DTrace Support disabled
OCI8 Version 2.0.8
Revision $Id: f04114d4d67cffea4cdc2ed3b7f0229c2caa5016 $
Oracle Run-time Client Library Version 12.1.0.2.0
Oracle Compile-time Instant Client Version 10.2

这样就说明扩展打开成功了

最后就是连接oracle数据库了

这里给一个实例连接 原文连接 http://www.orczhou.com/index.php/2010/09/php-oci8-oracle/

 1 <?php
 2 //配置信息
 3 $ora_host = "172.16.1.150";
 4 $ora_port="1521";
 5 $ora_sid = "cop";
 6 $ora_username = "webdev";
 7 $ora_password = "webdev";
 8 $charset = "UTF8"; ### zhs16gbk ###
 9
10 //构建Easy Connect string
11 //(如果tnsnames.ora中已经有了,可以直接使用Connect Name)
12 $ora_connstr = "(description=(address=(protocol=tcp)
13 (host=".$ora_host.")(port=".$ora_port."))
14 (connect_data=(service_name=".$ora_sid.")))";
15 //连接数据库
16 $conn = oci_connect($ora_username, $ora_password,$ora_connstr);
17 //执行Query,这里$res接收的是一个boolean值
18 $stid = oci_parse($conn, 'select * FROM dq_try_app');
19 $res = oci_execute($stid);
20
21 //在while循环中使用oci_fetch_array遍历结果。
22 while ($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) {
23
24     foreach ($row as $item) {
25         echo $item."***";
26     }
27     echo "<br>";
28
29 }
30 //var_dump($stid);
31 ?>

至此,整个的扩展加连接就完成了

转载于:https://www.cnblogs.com/azhw/p/4599632.html

自己配置的WAMP环境,扩展oracle函数库(oci)相关推荐

  1. DPDK — 扩展私有函数库

    目录 文章目录 目录 DPDK 扩展第三方函数库 扩展一个新的 libfoo 库 添加扩展库的启用配置 实现扩展库 添加扩展库的 Makefile 重新编译安装 DPDK 的目标环境 在自己的 DPD ...

  2. ORACLE函数库大全

    函数是预定义的命令集,对一行或一组行进行操作.函数主要针对以下对象进行计算或处理: 列 字面字符串常量 一个值或一组值 当 SQL*Plus 命令集内需要表达式或条件时可以使用函数. 它们通常使用于  ...

  3. wamp环境变量配置php,WAMP环境配置-PHP安装

    我这次环境配置安装的是php-5.6.25版本! (最近我在反复安装PHP的时候出现了一个问题,httpd.conf加载php5apache2_4.dll出现错误,怎么修改都不行,此时我安装的是VC1 ...

  4. 【杂谈】手把手带你配置深度学习环境

    要想AI学的好,那就得linux系统用的好.放弃windows系统,只用linux系统是你学习AI,或者说做一个合格程序猿的基础.今天就手把手教大家如何在linux系统上配置OpenCV和Caffe, ...

  5. [python+pip] 使用pip将函数库安装到Python环境或Anaconda环境

    Python函数库的安装方式 优先级1:pip安装或conda安装 优先级2:库的自定义安装 优先级3:库的文件安装(.whl文件) 下面介绍pip的使用 两个pip 在下载Anaconda之前,py ...

  6. [debug] 开源项目的本地使用:使用pip安装的函数库不能被anaconda和pycharm使用+visdom使用 +路径问题

    文章目录 将项目部署到本地的完整版尝试 项目文件下载 PyCharm中新建项目 下载的项目文件转移到PyCharm的项目文件 安装项目需要的相应版本的函数库 开启visdom 运行`main.py`文 ...

  7. visdom启动失败_[debug] 开源项目的本地使用:使用pip安装的函数库不能被anaconda和pycharm使用+visdom使用 +路径问题...

    文章目录 将项目部署到本地的完整版尝试 项目文件下载 PyCharm中新建项目 下载的项目文件转移到PyCharm的项目文件 安装项目需要的相应版本的函数库 开启visdom 运行`main.py`文 ...

  8. wamp安装和配置_手动配置Wordpress环境真香,让我毫不犹豫卸载LAMP和WAMP环境

    作为一名Java开发者,我平时也喜欢学习除Java以外的其他技术,例如PHP(有人说PHP是最好的编程语言,我无心考究).对于任何一个开发者,在学习一门新的编程语言过程中,首先都会面对配置开发环境这样 ...

  9. win7 php 5.3,win7 64位 WAMP环境下(PHP5.3) redis扩展无法生效

    将正确的redis.dll(for php5.3 + apache)放入到ext目录下 在php.ini里边添加redis扩展. 但是打印出phpinfo 还是没有redis 无论如何都尝试不成功 w ...

最新文章

  1. 博士毕业后,去哪儿?
  2. 用C++写的 Levenshtein 算法实现
  3. web05-CounterServlet
  4. IDEA Scala自动生成变量类型设置教程
  5. mysql取得列类型_Mysql列类型
  6. PAMIE:点击网页中的弹出窗口的按钮
  7. zklib php,php 安装zookeeper扩展报错
  8. nginx How nginx processes a request
  9. Leetcode每日一题: 1.two-sum(两数之和)
  10. 都是第一,3143亿背后科技公司贡献了多少?
  11. axure rp9是什么软件?如何在Mac中安装使用?
  12. vsCode配置通过Github同步(Settings Sync)
  13. 2019 Multi-University Training Contest 3:Yukikaze and Demons(点分治 + exgcd)
  14. 【Neo4j】CQL基本语法
  15. 蓝精灵协会 (The Smurfs‘ Society) 宣布与著名艺术家展开一系列的合作,打造传奇 PFP 系列
  16. 小米手机--刷机指南
  17. 1121. Damn Single (25)
  18. sx html5编辑器,SX HTML5全栈可视编辑器
  19. 快手客户端开发面试(一二三+HR面)
  20. DRMsoft.cn未注册版 解决办法

热门文章

  1. JDBC学习笔记(1)
  2. eclipse - 自动换行
  3. WinForm与WebForm调试输出
  4. python文本进度条代码解释_python动态文本进度条的实例代码
  5. linux服务器进虚拟机,初次登录 Linux 服务器马上要做的 9 件事|Linux 中国
  6. 网络通信误码率测试软件,微机在通信线路误码率测试中的应用
  7. 开源内容管理系统 php mysql_30 个很棒的PHP开源CMS内容管理系统小结
  8. 编程基础 之 位运算专题
  9. Spark源码分析之SchedulerBackend分析
  10. (20)VHDL移位寄存器