PHP+Oracle本地开发环境搭建方法详解

yipeiwu_com5年前PHP代码库

安装instant client

首先,是从https://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html下载相应的数据库版本对应的basic和devel的rpm包或zip压缩包。我这里选择rpm包。然后安装:

rpm -Uvh oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm

rpm -Uvh oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm

这样,instant client工具已经安装好了。接下来是PHP的扩展oci8。

安装oci8扩展

关于oci8的安装方法,在PHP官方文档中有详细的介绍,在线地址http://php.net/manual/en/oci8.installation.php。我这里选用pecl安装。直接运行命令:

pecl install oci8

注意,如果你和我一样使用的也是PHP7.0以上的版本,那么使用上面的命令。如果是其他版本,可以看到pecl的oci8页面有相关说明:

Use 'pecl install oci8-2.0.12' to install

for PHP 5.2 - PHP 5.6. Use 'pecl install oci8-1.4.10' to install for

PHP 4.3.9 - PHP 5.1

在运行安装命令后,会提示输入instant client路径,原文提示为:

Please provide the path to the ORACLE_HOME directory.

Use 'instantclient,/path/to/instant/client/lib' if you're compiling

with Oracle Instant Client [autodetect] :

默认路径为/usr/lib/oracle/11.2/client64/lib。注意,要在前面加上instantclient,完整输入为:

instantclient,/usr/lib/oracle/11.2/client64/lib

我第一次安装的时候,没有仔细阅读,只看到最后的autodetect便直接回车了,导致后面测试连接数据库失败。等待安装好后,还需要最后一步,便是在php.ini中加入配置extension=oci8.so或另起一个.ini文件,重启php-fpm

service php-fpm restart

现在,你便可以连接Oracle数据库了,本地开发环境也搭建好了。

相关文章

php adodb连接mssql解决乱码问题

周海汉/文ADO可以用 new COM("ADODB.Connection", NULL, CP_UTF8)//65001 这样的语句来实现正确转换。但ADO对php的支持缺乏文档。而有...

解决php接收shell返回的结果中文乱码问题

如果需要php执行一些shell命令,查看显示结果的话,如果shell输出的有中文,则php得到的中文返回结果可能类似是 “?\230?\180?\187?\229?\138?\168”...

php下将XML转换为数组

复制代码 代码如下:// Xml 转 数组, 包括根键 function xml_to_array( $xml ) { $reg = "/<(\w+)[^>]*>([\...

php关于array_multisort多维数组排序的使用说明

一、先看最简单的情况。有两个数组: 复制代码 代码如下: $arr1 = array(1,9,5); $arr2 = array(6,2,4); array_multisort($arr...

phpMyAdmin 链接表的附加功能尚未激活的问题

phpMyAdmin 链接表的附加功能尚未激活的问题

安装phpMyAdmin的时候我还是没有手动配置config文件,而是使用了它的setup功能。 除了 服务器名称 和 认证方式 以外都使用了默认值。 服务器名称自己随便输入了一个,认证...