2023-01-13 12:28来源:m.sf1369.com作者:宇宇
PHP其实本身是自带Oracle的扩展的,只不过开启之后基本上没有任何作用,需要自己去下载新版本的扩展,需要根据Oracle数据库版本去下载扩展,而且还需要下载对应php
版本的oracle instant client 来支持扩展的运行,不然只是开启扩展,扩展也是开启不成功的,如果电脑上安装了Oracle数据的话,就不用下载oracle instant client ,这里我本地没有Oracle的客户端所以需要下载oracle instant client。
下载完成之后,解压到同一个文件夹目录下, 在这里,我们放在E:\Oracle下,解压到当前文件夹,最后会自动生成一个新的文件夹instantclient_11_2,两个安装包的文件都会放到该文件夹下,即 E:\Oracle\instantclient_11_2。
二、 修改系统变量
1> 将E:\Oracle\instantclient_11_2添加到系统变量PATH中
2> 新增系统变量
NLS_LANG=AMERICAN_AMERICA.WE8MSWIN1252 -->> 服务器端字符集
TNS_ADMIN=E:\Oracle\instantclient_11_2 -->> 指定tnsnames.ora所在位置
注意:如果安装网上方法系统变量依然没有生效的话,需重启电脑让修改的系统变量生效。
三、 在E:\Oracle\instantclient_11_2 下新建tnsnames.ora配置文件,内容如下:
到这里支持的扩展工具就安装好了,接下来就去下载oci8的php扩展包。
需要根据php版本下载对应版本的扩展,解压后将解压出来的.dll文件放到对应php的ext中,最后在php.ini中增加开启对应的扩展
extension=php_oci8.dll
extension=php_oci8_11g.dll
执行完成之后可以在phpinfo中查看到对应的功能已经开启。
如果你的phpinfo里面显示出来了这些就说明PHP已经可以连接并操作Oracle数据库了。
如果你在安装PHP的时候不指定配置文件的目录,一般配置文件php.ini需要放在/etc目录下。
指定php.ini的位置。
./configure --prefix=/usr/local/php5 --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php5 --with-ldap --with-gettext
你在安装php的时候./configure加上 --with-config-file-path=你想指定的目录。
安装完后,你再把php.ini放到./configure设定的配置文件目录。
你可以搜索php安装指定配置文件目录
<?php
phpinfo(); //然后找 Loaded Configuration File
你可以进入超级用户 root ,在 # 下输入 find 命令进行查找。
#find / -name php.ini -print 如果存在 PHP 语言的 php.ini 初始化文件的话,系统会自动显示出来它在哪一个子目录下面。
1、如果是rpm包安装的,默认配置文件是/etc/php.ini。
2、如果是源码包安装的,需要自己到源码包的目录下复制一个php.ini-development或者php.ini-production到php的配置文件所在目录,并改名为php.ini。
php配置文件目录:编译的时候没有指定--with-config-file-dir,则默认放在在php根目录下的lib目录下(例如:php安装在/opt/php/目录,则放在/opt/php/lib/目录下)