2011-04-13 42 views
2

我知道这条语句更新了zend框架中的记录。但我想了解这个声明的完整流程。声明是这个zend更新语句的流程是什么

$request->update($data,$request->getAdapter()->quoteInto('id = ?',$this->getRequest()->getParam('selected_id'))))
$data是传递给它的记录数组, $request是模型的对象。我想知道这种说法

+0

命名DbModel变量$请求是非常糟糕的做法:) – 2011-04-13 10:09:04

+0

@Tomas Fejfar谢谢你的建议,但什么是好的做法? – 2011-04-13 12:46:42

+1

这是一种笑话(内部笑话是准确的):) $ request和$ response通常是Request和Response对象(意思是HTTP请求和响应)。你应该这样命名它,它类似于内容,而不是与普通对象(数据库,注册表,请求,...)混淆。 – 2011-04-13 15:00:25

回答

2

的全部意义正如你知道的更新语句使用$table->update($data, $where);

$request是db表模型。 ->getAdapter获取adapter

另外quoteInto()最好定义为通过文档

引用的最典型的用途是一个PHP变量插值到SQL表达式或语句。您可以使用quoteInto()方法一步完成此操作。该方法有两个参数:第一个参数是一个包含占位符符号(?)的字符串,第二个参数是应该替代该占位符的值或PHP变量。

而最后一个表达式$this->getRequest()->getParam('selected_id')

$this->getRequest()获取请求$_GET类型

而且getParam('selected_id'))GET对象的selected_id

+0

以非常精确的方式解释 – 2011-04-13 08:08:28

+0

@AwaisQarni好,..谢谢! – 2011-04-13 08:09:41