对于在 Zend 框架中引用 mysql 查询,我几乎没有疑问。尽管这个问题对我有所帮助,但仍有几件事令人困惑:
1) $table 是 Zend_Db_Table。试图从表中获取一行。
$where[] = $db->quoteInto('id = ?', $id);
$where[] = $db->quoteInto('user_id = ?', $user_id);
$row = $table->fetchRow($where);
我需要在这里使用 quoteInto 还是会在 fetchRow 中自动引用它?这种查询的更好方法是什么?如果需要的话,可以将 2 个 quoteInto 合并为一个吗?
2) $table 是 Zend_Db_Table。试图在表中保存一行。
$tablerow = $table->createRow();
$rowdata = array('id' => $id, 'user_id' => $user_id);
$tablerow->setFromArray($rowdata);
$ret = $tablerow->save();
我需要在这里使用某种报价功能吗?
3) $table 是 Zend_Db_Table。试图更新表中的一行。
$row = $table->fetchRow($where);
$row->name = $name;
$row->save();
我需要在第二步中引用 $name 吗?
4) 一般查询
一个)
$sql = "SELECT * FROM users where id=? and name=?";
$results = $db->fetchAll($sql, array($id, $name));
我需要在这里报价吗?
二)
$sql = "SELECT * FROM users where id=? and name=?";
$stmt = $db->query($sql, array($id, $name));
$result = $stmt->fetchAll();
我需要在这里报价吗?
C) A 或 B 中的哪一个更适合一般查询?