【发布时间】:2013-10-18 13:57:49
【问题描述】:
我知道这个问题在整个 stackoverflow 中有几个实例,但我没有找到解决方案。
我正在使用 Apache 和 PHP 5.3 运行 CentOS
一个 .php 脚本给了我这个错误:
Fatal error: Class 'PDO' not found in ...
我运行了phpinfo();,页面上唯一存在“pdo”的地方是“配置命令”'--disable-pdo' 行。
我尝试了#yum install php-pdo,但不存在任何包。
我也尝试了#pecl install pdo,最后我得到了这些错误:
/root/tmp/pear/PDO/pdo_dbh.c: In function 'pdo_stmt_instantiate':
/root/tmp/pear/PDO/pdo_dbh.c:410: error: 'zval' has no member named 'refcount'
/root/tmp/pear/PDO/pdo_dbh.c:411: error: 'zval' has no member named 'is_ref'
/root/tmp/pear/PDO/pdo_dbh.c: In function 'pdo_stmt_construct':
/root/tmp/pear/PDO/pdo_dbh.c:435: error: 'zend_fcall_info' has no member named 'object_pp'
/root/tmp/pear/PDO/pdo_dbh.c:458: error: 'zend_fcall_info_cache' has no member named 'object_pp'
/root/tmp/pear/PDO/pdo_dbh.c: In function 'zim_PDO_setAttribute':
/root/tmp/pear/PDO/pdo_dbh.c:752: error: 'zval' has no member named 'refcount'
/root/tmp/pear/PDO/pdo_dbh.c: In function 'zim_PDO_getAttribute':
/root/tmp/pear/PDO/pdo_dbh.c:818: error: 'zval' has no member named 'refcount'
/root/tmp/pear/PDO/pdo_dbh.c: In function 'pdo_hash_methods':
/root/tmp/pear/PDO/pdo_dbh.c:1122: warning: assignment discards qualifiers from pointer target type
/root/tmp/pear/PDO/pdo_dbh.c:1126: warning: assignment discards qualifiers from pointer target type
make: *** [pdo_dbh.lo] Error 1
ERROR: `make' failed
然后在 php.net 文档上,它基本上说该软件包是自 PHP 5.1 以来 php 安装的标准配置。
我在 php.ini 中添加了 extension=pdo.so 行并重新启动了 Apache,但问题仍然存在。有什么建议吗?
【问题讨论】:
-
php-pdo是 CentOS 软件包的正确名称。如果你做yum search php-pdo,它会出现吗? -
我从 yum search pdo 得到的唯一结果是一堆“casenoupdown”包。我最近也跑了 yum clean all 和 yum update
-
Do
yum repolist-- 你在输出中得到updates吗? -
更新 CentOS-6 - 更新