https://blog.csdn.net/houpanqi/article/details/78841928

首先,本篇文章重点分享的是:在Win平台下,如何使用PHP7连接Oracle 12C,所以关于Oracle的安装和配置,请自行百度或Google.

按照这个教程,基本能解决大多数的连接Oracle报错的问题!

准备工作:(64位为例,所有所需工具、文件,没有特殊说明的,都要是64位的,且版本号要严格对应,否则可能发生未知的各种错误)
1、安装并配置好Oracle 12C。
2、以PhpStudy为例,其他LAMP工具原理一样。
3、Oracle官方对应的Instant Client版本。建议下载Basic。
4、严格对应PHP版本号(如7.0.21)的三个dll文件:php_pdo_oci.dll、 php_oci8_12c.dll、php_oci8.dll

好,进入正题,下面就开始配置,使PHP成功连接Oracle。
1、打开PHP的扩展,php_pdo_oci.dll、 php_oci8_12c.dll、php_oci8.dll这三个都要打开。
然后查看phpinfo

将图上标注的路径,复制下来。
打开CMD 执行: mkdir c:\php-sdk\oracle\x64\instantclient_12_1\sdk ,建好目录。
 
2、将准备好的Instant Client解压,然后把根目录下的所有文件,拷贝到上面建好的sdk目录下。(重要)
 

3、创建环境变量
Path中,增加 C:\php-sdk\oracle\x64\instantclient_12_1\sdk
ORACLE_HOME = C:\php-sdk\oracle\x64\instantclient_12_1\sdk
TNS_ADMIN = C:\php-sdk\oracle\x64\instantclient_12_1\sdk

4、拷贝文件:
1> 将C:\php-sdk\oracle\x64\instantclient_12_1\sdk 目录下的文件,拷贝到Apache的bin目录
2> 同样,将上述文件,拷贝到 PHP的根目录下。

重启Apache服务即可。

以Yii2为例:

配置好DSN后,测试查询,一切正常:

至此,教程结束。
 
注:如果此时还不行,那就要将C:\php-sdk\oracle\x64\instantclient_12_1\sdk下的文件,拷贝致windows/sysWoW64下(32位的在system32下)
 

Windows下PHP7/5.6以上版本 如何连接Oracle 12c,并使用PDO的更多相关文章

  1. 转:Windows下PHP7安装Redis和Redis扩展phpredis

    原文地址:Windows下PHP7安装Redis和Redis扩展phpredis Windows下PHP7安装Redis和Redis扩展phpredis 2016-06-08 17:53:00 标签: ...

  2. windows下php7安装redis扩展

    windows下php7安装redis扩展windows下开发用的wamp集成的环境,想装个php-redis扩展.php_redis.dll下载地址:https://pecl.php.net/pac ...

  3. Windows 下让 Python 多个版本共存(支持 pip)

    转载自 http://blog.kgzx.net/index.php/archives/40/ 因为类库兼容性的关系,写实际项目时都是用 Python 2,但自己试验性的写点小东西还是喜欢用 Pyth ...

  4. windows下怎么解决Python双版本问题

    相信大家会在windows下会遇到Python双版本问题 当我们装了Python2和Python3时我们好只能在命令栏调出最高版本的那个低版本的难道消失了吗?今天我们就解决这个问题! 1.下载 我们在 ...

  5. windows下mysql 5.7以上版本安装及遇到的问题

    (原) 早些前用window安装mysql挺简单的,一个安装程序,一路下一步. 2006的5.0版本,确实太早了点. 于是官网上又下了一个版本,windows也是提供了二个版本Installer(安装 ...

  6. windows下php7.1安装redis扩展以及redis测试使用全过程

    最近做项目,需要用到redis相关知识.在Linux下,redis扩展安装起来很容易,但windows下还是会出问题的.因此,特此记下自己实践安装的整个过程,以方便后来人. 一,php中redis扩展 ...

  7. windows下php7.1安装redis扩展以及redis测试使用全过程(转)

    最近做项目,需要用到redis相关知识.在Linux下,redis扩展安装起来很容易,但windows下还是会出问题的.因此,特此记下自己实践安装的整个过程,以方便后来人. 一,php中redis扩展 ...

  8. Windows下部署ElasticSearch5.0以下版本

    Windows下部署ElasticSearch分ElasticSearch5.0以上版本(包括5.0)和ElasticSearch5.0以下版本两种情况,这两种安装方式有很大不同.今天首先说Elast ...

  9. windows下创建vp9的VS版本

    1. webm官网   下载版本: http://code.google.com/p/webm/downloads/list 创建过程这里有比较详细的英文说明: http://www.webmproj ...

随机推荐

  1. C语言结构体的“继承”

    这里说的继承有点像C++里的父类和子类,实际上是结构体类型的强制转换,最近看Linux内核源码时经常接触到这种方法,在这里就当作是一个简单的学习吧. 下面给出一个Demo,很简单,分别定义了一个fat ...

  2. Spring中扩展点汇总 ------------- 框架图

      原文链接:https://my.oschina.net/dachengxi/blog/3014156 转载于:https://my.oschina.net/dachengxi/blog/30141 ...

  3. 自定义 Windows 右键菜单项

    注:本文涉及到注册表操作,不认识请不要随意修改! 右键菜单项储存在注册表 HKEY_CLASSES_ROOT 中,一般各种程序的右键菜单项都可以在此项下面找到: 添加右键菜单项 右键单击 shell, ...

  4. 类嵌套_list泛型_餐馆点菜例

    form1内容: private void button1_Click(object sender, EventArgs e) { //声明并初始化一张点菜清单 yiduicai danzi = ne ...

  5. prometheus重启hang住问题记录

    官方issue并不承认这是一个问题,参考: https://github.com/prometheus/prometheus/issues/5727 https://github.com/promet ...

  6. SpringMVC中@RequestParam注解作用

    1.不使用@RequestParam  请求参数名必须和形参名称一样 2.使用@RequestParam    请求参数名必须和@RequestParam value属性值一样    请求参数名不必和 ...

  7. Vue学习之品牌案例部分代码小结(二)

    品牌案例的增删查和其他部分效果: <!DOCTYPE html> <html lang="en"> <head> <meta charse ...

  8. JavaScript 流程控制(二)循环结构

    一.while 语句 语法结构: 声明循环变量:while (循环条件) { //循环体 // 迭代条件 } 当循环条件为 true 时,执行循环体:当循环条件为false时,结束循环. 二.do.. ...

  9. JavaScript 之 对话框

    一.alert()  语法格式: alert("hello javascript"); 该对话框是弹出一个提示信息. Chrome 浏览器的效果. 二.prompt() 语法格式: ...

  10. iview引用自定义的图标

    在vue脚手架中,目前项目使用的iview里面的图标,不够满足,需要自定义加入图标. 在阿里图标库:https://www.iconfont.cn 然后把本项目需要的图标可以放在里面. 然后将icon ...