用zend的fetchRow获取最实际的行

时间:2014-01-30 21:43:37

标签: zend-framework zend-db

我很想知道(1.12)..所以请原谅我的基本问题:

我想从数据库中只获取一行。因此我想使用像这样的fetchRow(..)函数

$row = $db->fetchRow($db->select()->where("col1 = '".val1."' AND col2='".val2."'")); 

问题是,可能有很多行符合where子句,我只想获得id最高的行。我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

fetchRow()方法只返回一行。如果要选择符合其他条件的最高ID的行,请按以下方式调用:

$select = $db->select()
             ->where('col1 = ?', $val1)
             ->where('col2 = ?', $val2)
             ->order('id DESC');
$row = $db->fetchRow($select);

另外,请记住以上述代码的方式将值传递给SQL查询(以避免SQL注入攻击风险)。