我正在学习 Zend Framework 2 Skeleton 教程,但选择在 my.phpcloud.com 上的容器中使用 mysql 数据库。
在 global.php 文件中,我有:
return array(
'db' => array(
'driver' => 'Pdo',
'dsn' => 'mysql:dbname=mycontainer;host=mycontainer-db.my.phpcloud.com',
'driver_options' => array(
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''
),
),
'service_manager' => array(
'factories' => array(
'Zend\Db\Adapter\Adapter'
=> 'Zend\Db\Adapter\AdapterServiceFactory',
),
),
);
在我的 local.php 文件中,我有:
return array(
'db' => array(
'username' => 'mycontainer',
'password' => 'mypassword',
),
);
即使我故意输入了不正确的凭据,我也没有收到任何错误。我的视图加载正确...除了没有记录。我已验证该表存在并且命名正确。我已经验证该表包含记录。
如果我返回控制器来调用视图的数组,而不是填充的 ViewModel,它会按预期加载带有错误的视图,因为 AlbumTable 没有加载。换句话说,视图被正确路由。似乎数据库没有返回任何结果。我已将所有内容复制并粘贴到正确的文件中,并对其进行了三次检查。我使用 Zend Server 和 MySql 在本地完成了本教程,它运行良好。只是 PHPCloud 没有发出任何错误,似乎没有从其数据库中返回任何记录,无论我是否故意引入错误的凭据。
感谢您提前提供任何帮助。