- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
他,
几天以来,我一直在尝试在新服务器上的 PHP7 上安装 PDO_OCI。我曾经在其他服务器上使用过 PDO_OCI,但在 PHP 5.4 上,一切都很好,这个版本没有问题。
我有消息:
:/home/pear/download/PDO_OCI-1.0# make
/bin/bash /home/pear/download/PDO_OCI-1.0/libtool --mode=compile cc -I -I.
-I/home/pear/download/PDO_OCI-1.0 -DPHP_ATOM_INC
-I/home/pear/download/PDO_OCI-1.0/include
-I/home/pear/download/PDO_OCI-1.0/main
-I/home/pear/download/PDO_OCI-1.0
-I/usr/include/php/20151012
-I/usr/include/php/20151012/main
-I/usr/include/php/20151012/TSRM
-I/usr/include/php/20151012/Zend
-I/usr/include/php/20151012/ext
-I/usr/include/php/20151012/ext/date/lib
-I/usr/lib/oracle/instantclient/include/oracle/12.1/client -DHAVE_CONFIG_H -g -O2 -c
/home/pear/download/PDO_OCI-1.0/oci_driver.c -o oci_driver.lo
libtool: compile: cc -I -I.
-I/home/pear/download/PDO_OCI-1.0 -DPHP_ATOM_INC
-I/home/pear/download/PDO_OCI-1.0/include
-I/home/pear/download/PDO_OCI-1.0/main
-I/home/pear/download/PDO_OCI-1.0
-I/usr/include/php/20151012
-I/usr/include/php/20151012/main
-I/usr/include/php/20151012/TSRM
-I/usr/include/php/20151012/Zend
-I/usr/include/php/20151012/ext
-I/usr/include/php/20151012/ext/date/lib
-I/usr/lib/oracle/instantclient/include/oracle/12.1/client -DHAVE_CONFIG_H -g -O2 -c
/home/pear/download/PDO_OCI-1.0/oci_driver.c -fPIC -DPIC -o .libs/oci_driver.o
/home/pear/download/PDO_OCI-1.0/oci_driver.c: In function 'pdo_oci_fetch_error_func':
/home/pear/download/PDO_OCI-1.0/oci_driver.c:51:3: error:
too many arguments to function 'add_next_index_string' add_next_index_string(info, einfo->errmsg, 1);
In file included from /usr/include/php/20151012/main/php.h:39:0,
from /home/pear/download/PDO_OCI-1.0/oci_driver.c:25:
/usr/include/php/20151012/Zend/zend_API.h:432:14: note: declared here
ZEND_API int add_next_index_string(zval *arg, const char *str);
^
/home/pear/download/PDO_OCI-1.0/oci_driver.c: In function 'oci_handle_preparer':
/home/pear/download/PDO_OCI-1.0/oci_driver.c:238:59: warning: passing argument 5 of 'pdo_parse_params' from incompatible pointer type
ret = pdo_parse_params(stmt, (char*)sql, sql_len, &nsql, &nsql_len TSRMLS_CC);
^
In file included from /home/pear/download/PDO_OCI-1.0/oci_driver.c:29:0:
/usr/include/php/20151012/ext/pdo/php_pdo_driver.h:678:13: note: expected 'size_t *' but argument is of type 'int *'
PDO_API int pdo_parse_params(pdo_stmt_t *stmt, char *inquery, size_t inquery_len,
^
/home/pear/download/PDO_OCI-1.0/oci_driver.c: At top level:
/home/pear/download/PDO_OCI-1.0/oci_driver.c:411:2: warning: initialization from incompatible pointer type
oci_handle_preparer,
^
/home/pear/download/PDO_OCI-1.0/oci_driver.c:411:2: warning: (near initialization for 'oci_methods.preparer')
/home/pear/download/PDO_OCI-1.0/oci_driver.c:412:2: warning: initialization from incompatible pointer type
oci_handle_doer,
^
/home/pear/download/PDO_OCI-1.0/oci_driver.c:412:2: warning: (near initialization for 'oci_methods.doer')
/home/pear/download/PDO_OCI-1.0/oci_driver.c:413:2: warning: initialization from incompatible pointer type
oci_handle_quoter,
^
/home/pear/download/PDO_OCI-1.0/oci_driver.c:413:2: warning: (near initialization for 'oci_methods.quoter')
Makefile:198: recipe for target 'oci_driver.lo' failed
make: *** [oci_driver.lo] Error 1
我的配置:Linux 服务器系统 Linux 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt20-1+deb8u4 (2016-02-29) x86_64PHP PHP版本 7.0.4-1~dotdeb+8.1PDO 驱动 mysqlOCI8 支持已启用(正在运行)。
我读过 PDO_OCI 包含在 PHP7 中 https://github.com/php/php-src/tree/PHP-7.0.7/ext/pdo_oci但如何激活它?
我的 PHP 5.4 代码在此服务器 PHP7 上不起作用。
有人有解决方案吗?
问候
最佳答案
下载您的 PHP 源文件(从 https://www.php.net/downloads 获取 URL,例如 https://www.php.net/distributions/php-7.4.16.tar.bz2 ):
PHP_VERSION=7.3.27 # Set to your PHP version
cd /tmp
sudo apt-get install php-dev -y
wget https://www.php.net/distributions/php-${PHP_VERSION}.tar.gz
tar xvfj php-${PHP_VERSION}.tar.bz2
rm php-${PHP_VERSION}.tar.bz2
复制pdo_oci
到/tmp
:
cp -r /tmp/php-${PHP_VERSION}/ext/pdo_oci /tmp
cd /tmp/pdo_oci
构建插件:
sudo phpize
sudo ./configure --enable-option-checking=fatal # Optionally add more parameters
sudo make
sudo make install
最后,创建并链接文件:
sudo echo "extension=pdo_oci.so" > /etc/php/7.3/mods-available/pdo_oci.ini
sudo ln -s /etc/php/7.3/mods-available/pdo_oci.ini /etc/php/7.3/apache2/conf.d/20-pdo_oci.ini
重启apache2
关于php - 在 PHP7 上安装 PDO_OCI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37191161/
最近我将我的 opensuse 12.3 更新到了更新的 13.1 不幸的是,我无法编译所需的 pdo_oci.so。使用本指南,您可以在 12.3 上编译扩展: http://forums.open
我正在处理一个新项目并尝试确定是否应该使用 PDO_OCI 或 oci8 进行数据库连接。不幸的是,我认为没有人真正比较过这两者。 我所掌握的信息如下,以便您了解我为什么担心这个选择。 OCI8 是由
今天我的问题与 PDO、OCI8 和 PDO_OCI 有关。但从一开始。 我使用的是 Ubuntu 11.10 和 PHP 版本:5.3.8-1ubuntu3。我已经安装了 Oracle 10g Ex
我想在 Oracle 数据库中插入一些 base64 编码的数据(每个字段最多 500.000 个字符)。 因为在我开始使用 PDO 并将字段设置为 CLOB 之前,我还没有使用 Oracle 和 P
他, 几天以来,我一直在尝试在新服务器上的 PHP7 上安装 PDO_OCI。我曾经在其他服务器上使用过 PDO_OCI,但在 PHP 5.4 上,一切都很好,这个版本没有问题。 我有消息: :/ho
我工作的公司目前使用一些基本功能来抽象 OCI 库作为数据库连接的一种方式。我们正在考虑切换到 PHP 的 PDO 对象,但从一些快速搜索来看,Oracle 驱动程序似乎不如其他 PDO 驱动程序成熟
Oracle 数据库适配器:“pdo_oci”MySQL 数据库适配器:“pdo_mysql” 用于构建 JOIN 查询的代码: $db = Zend_Db_Table::ge
我需要在 ubuntu 机器上安装 PDO_OCI,没有可以用 apt-get 安装的默认包。 有很多教程展示了如何做,但是当我按照它们进行操作时,我遇到了与编译相关的问题(配置、制作...) 这是我
我想使用 ORM,但遗憾的是我们的数据库 (Oracle) 没有稳定的 PDO。 PHP 页面指出 PDO_OCI 扩展是“实验性的”并警告不要使用它。 似乎 Doctrine 和 Propel 都需
我如何使用 php 检测机器是否安装了 oracle (oci8 和/或 pdo_oci)? 我正在开发一个 PHP 项目,一些开发人员(例如我自己)已经安装了它,但主题人员几乎不需要安装它。我如何编
我是在服务器上设置 Oracle 数据库的新手,我正在 CentOS7 服务器上使用 Docker 设置 NGINX PHP-FPM 7.4 Alpine 和 Oracle 数据库(centos-re
我是一名优秀的程序员,十分优秀!