我正在尝试为 DBAL 连接创建自定义包装器,并已正确设置 config.yml 文件,
但是我收到以下错误:
DBALException: The given 'wrapperClass' Some\Bundle\Doctrine\DBAL\ExtendedConnection
has to be a subtype of \Doctrine\DBAL\Connection.
但是我的班级正在延长
\Doctrine\DBAL\Connection
:
namespace Some\Bundle\Doctrine\DBAL\ExtendedConnection;
use Doctrine\DBAL\Connection AS Connection;
class ExtendedConnection extends Connection
{
public function multipleResultSetsFetchAll()
{
$stmt = $this->getConnection();
do{
$results[] = $stmt->fetchAll();
}while($stmt->nextRowset());
return $results;
}
}
有什么想法吗?
我设法在这里找到问题 - 这是文件名。我的文件名是 Conection.php,但将其更改为 ExtendedConnection.php 有效。
还需要注意的是,在您的 yaml 或 xml 中定义类名时,您必须提供完全限定的命名空间。这对我来说是一个陷阱,因为学说文档仅使用类名称。好教义!