为什么 Phalcon 2 会发出 "undefined symbol: php_pdo_get_dbh_ce in Unknown on line 0" 警告?

Why does Phalcon 2 raise "undefined symbol: php_pdo_get_dbh_ce in Unknown on line 0" warning?

当我根据 https://docs.phalconphp.com/en/latest/reference/install.html 的描述安装 Phalcon 2.0.13 并且我想启动我的测试脚本时,我得到了以下错误(字面上它只是一个警告,但它导致 Phalcon 无法加载这会导致错误):

{ PHP 警告:PHP 启动:无法加载动态库 '/usr/lib/php/20131226/phalcon.so' - /usr/lib/php/20131226/phalcon.so:未定义符号:第 0 行未知中的 php_pdo_get_dbh_ce }

这是什么症状引起的,我该如何摆脱它?

经过一番折腾,终于解决了问题。 {extension=phalcon.so} 行不应放在 php.ini 中。更确切地说,您应该创建一个包含 {extension=phalcon.so}/etc/php/5.6/cli/conf.d/30-phalcon.ini 文件。

原因是这样可以保证ini文件的处理顺序是合适的。

如果您不仅想在cli 中使用Phantom,还想在apache 模块中使用Phantom,那么也将ini 文件复制到相应的目录中。 (目录名称在您的系统中可能不同。)