Zend framework Zend教程:难以找到第1行

Zend framework Zend教程:难以找到第1行,zend-framework,zend-framework2,Zend Framework,Zend Framework2,我正在努力学习教程 我有一个问题,我不能使用getAlbum(1)函数。 可以fetchAll()->返回的所有行 如果我想使用getAlbum($personalnummer)->找不到第1行 是的,数据库中有一个带有Personalnummer 1的条目,它的类型是int。唯一的区别是,我使用的是Microsoft SQL Server,但配置是正确的,因为所有行都可以返回 有什么想法吗 public function fetchAll() { $resultSet = $this-

我正在努力学习教程

我有一个问题,我不能使用getAlbum(1)函数。 可以
fetchAll()
->返回的所有行

如果我想使用
getAlbum($personalnummer)
->找不到第1行

是的,数据库中有一个带有Personalnummer 1的条目,它的类型是int。唯一的区别是,我使用的是Microsoft SQL Server,但配置是正确的,因为所有行都可以返回

有什么想法吗

public function fetchAll()
{
    $resultSet = $this->tableGateway->select();

    return $resultSet;
}

public function getAlbum($personalnummer)
{
    $personalnummer  = (int) $personalnummer;
    $rowset = $this->tableGateway->select(array('Personalnummer' => $personalnummer));

    $row = $rowset->current();

    if (!$row) {
        throw new \Exception("Could not find row $personalnummer");
    }
    return $row;
}

如果有助于替换,请尝试此选项

$rowset = $this->tableGateway->select(array('Personalnummer' => $personalnummer));
用这个

$where = new \Zend\Db\Sql\Where();    
$where->equalTo('Personalnummer', $personalnummer);

$rowset = $this->tableGateway->select($where)

您的专栏名为“Personalnummer”?它包含什么样的数据?它是一个Int字段谢谢,但是调用未定义的方法Zend\Db\ResultSet\ResultSet::where()@stefen,提供的示例应该可以工作,不确定它为什么不提取行,检查tableGateway是否正确初始化并提取数据,我已经使用where类更新了答案,希望它能帮助Eder auch nicht:((我的选择是用一个字符串(4)“Herr”,blablabl)来表示对象(数据库表\模型\内部登录视图)#。。