感谢akond,实际问题看起来像是我在服务管理器配置中对db对象进行了工厂创建。因此,我必须在db.local.php中添加以下行
'service_manager' => array(
'factories' => array(
'Zend\Db\Adapter\Adapter' => 'Zend\Db\Adapter\AdapterServiceFactory',
),
),
配置的完整工作代码如下,
return array(
'db' => array(
'driver' => 'Mysqli',
'username' => 'xxx',
'password' => 'xxx',
'database' => 'xxxx',
'host' => 'localhost'
),
'service_manager' => array(
'factories' => array(
'translator' => 'MvcTranslator',
'Zend\Db\Adapter\Adapter' => 'Zend\Db\Adapter\AdapterServiceFactory',
),
'aliases' => array(
'db' => 'Zend\Db\Adapter\Adapter',
),
),
);