我正在学习 Zend 框架,并且正在解决数据库带来的不便。
使用 php 你可以像这样进行一些字符串操作
$sqlstatement = "select id,name from TABLE where ID='$id'";
if ($admin == true) {
$sqlstatement .= " and admin = 'Yes'";
}
有没有办法用 Zend 做到这一点?目前我正在做这样的事情。
if ($admin == true){
$sqlstatement = $this->select()
->from($this->_name,array('id','name'))
->where("ID='$id'")
->where("admin = 'Yes'");
}else{
$sqlstatement = $this->select()
->from($this->_name,array('id','name'))
->where("ID='$id'");
}
理想情况下,我想做类似...
$sqlstatement = $this->select()
->from($this->_name,array('id','name'))
->where("ID='$id'");
if ($admin == true){
$sqlstatement .= $this->select()
->where("admin = 'Yes'");
}
我有一个模型创建查询并将它们返回到我的视图。所以 $this->select() 实际上发生在我的模型类函数中并返回 Zend_Db_Table_Row 对象。