作者:秋凉凉_e1998 | 来源:互联网 | 2023-08-17 17:03
首先,本篇文章重点分享的是:在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下)