我正在尝试将Zend TableGateway
用作我的应用程序(不是ZF2)的独立组件。
下面是一个简单的测试脚本,只是获取一些行,但我收到了错误
未捕获的异常'Zend \ Db \ Adapter \ Exception \ RuntimeException',带有消息'行计数在无缓冲的结果集中不可用'。在/var/www/shared-views-slim/vendor/zendframework/zend-db/Zend/Db/Adapter/Driver/Mysqli/Result.php:324
以下是我的代码:
/**
* This makes our life easier when dealing with paths. Everything is relative
* to the application root now.
*/
chdir(dirname(__DIR__));
// require composer autoloader for loading classes
require 'vendor/autoload.php';
// testing
$adapter = new Zend\Db\Adapter\Adapter(array(
'driver' => 'Mysqli',
'database' => 'budget_development',
'username' => 'root',
'password' => 'mypasswd'
));
use Zend\Db\TableGateway\TableGateway;
$accountsTable = new TableGateway('accounts', $adapter);
// search for at most 2 artists who's name starts with Brit, ascending
$rowset = $accountsTable->select();
var_dump($rowset);
有谁知道如何解决这个问题?我真的不明白我需要做什么。
答案 0 :(得分:3)
您使用过缓冲结果,通常用于大数据集。正如您正在寻找艺术家(正如您所评论的那样),这不是必需的。
可能有一个ini文件集,例如:
'db' => array(
'options' => array(
'buffer_results' => true,
),
(它是buffer_results部分)。
提示:看看config / autoload / global.php,它在我的应用程序中的位置。
答案 1 :(得分:1)
也许有人帮助了这个
'driver' => 'PdoMysql',
使用PdoMysql驱动程序。这项工作4我