最近其中一个项目需要用PHP连接Oracle数据库,因为用thinkphp5 oracle驱动框架搭配实施,由于不是大众民用,所以使用到的概率也很低。当然至于thinkphp5.0对于oracle的驱动配置问题可以通过此文解决,https://github.com/top-think/think-oracle ,下载后的src包,改名后oracle,放入thinkphp\library\think目录下,

首先在php.ini开启 php_pdo_oci 扩展

然后,配置应用的数据库配置文件database.php的type参数为:

‘type’ => ‘\think\oracle\Connection’,

一般我们开启扩展支持,只需要在php.ini中打开扩展就可以,比如要连接oracle数据库,我们就只要打开 php_oci8.dll 和 php_oci8_11g.dll 就可以了。但是我们打开后,查看phpinfo()并没有开启,也没错误提示这个问题就有点大,经过一番百度百度后,回想起来,还需要安装客户端的事情,所以这里我们还需要下载oracle的客户端,这里我们就不要下载带工具的1.5G的了,直接下载只有客户端支持库的,官方要注册麻烦,这里同我收藏的

32位:http://pan.baidu.com/s/1ntqTIzf
64位:http://pan.baidu.com/s/1hq7YVQk

或者 http://www.oracle.com/technetwork/topics/winx64soft-089540.html 打到对应的版本

注意这里的32位,64位不是指的系统,而是要根据你安装的PHP的位数,就好比今天我纠结了好久的为什么不行,然后注意到安装的是64位的客户端,按照系统看的。而PHP却是32位的(我是用的是集成环境 phpStudy),后更换成32位的客户端安装就真的可以了。

安装oracle客户端后,要为此并设置环境变量中系统变量(右击打开桌面的计算机属性->高级->环境变量),而不是用户变量,添加到path项中(默认是C:\Program Files (x86)\Oracle\Instant Client\bin)。

重启电脑后,查看PHP扩展已有oci8扩展。

成功!

所以对于PHP开启Oracle扩展有问题的,就有如下几点要注意。
1.PHP.ini中开启扩展,一般是php_pdo_oci,  这样就不需要管客户端版本
2.安装Oracle客户端,不安装单独扩展是不行的
3.注意客户端和PHP的位数,32就配32,64就配64

发表评论

电子邮件地址不会被公开。 必填项已用*标注

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>


*