用同样的方法链接方法

问题描述:

$db->SELECT("tablename")->WHERE() 
$db->update("tablename")->WHERE() 
Etc.. 

我如何确定在WHERE方法中哪个方法被首先调用?我想在SELECT,update和delete上使用相同的WHERE方法。用同样的方法链接方法

这是可能的吗?谢谢!

+1

你错过了一个标签,说明你正在使用哪个库/框架。 – Musa 2014-11-02 17:53:10

+0

@Musa说了什么。我可以告诉你如何编码,但只有它是你制作的图书馆。如果它像教条一样,那么我建议看看他们的文档。您可以克隆$ db并更改更新等。 – ArtisticPhoenix 2014-11-02 18:16:50

+0

$ db-> select(“users”) - > where(array(“username”,“=”,“username”)); (数组(“id”,“=”,“14”)); $ db-> update(“users”,array(“username”=>“username”)) 好吧,我想我的解释不好。我想写上述语句,并将where()方法链接到select和update上。 问题是;如何确定我是否在之前使用过select或update。 public function where(){if($ this-> select()){ //将where数据保存在select var中。 } elseif($ this-> update()){ //保存更新变量中的where数据。 } } 但上面的代码显然是无效的。 – jeastogg 2014-11-02 18:59:14

我认为,多于一次调用where子句并没有什么意义。

如果你建立你自己的系统,你应该看看Doctrine的例子。这里就像是

where 
andWhere 
orWhere 

功能,所以,你可以调用,其中只有一次,但你可以调用其他的功能多于一个时间来建立声明。

http://doctrine-orm.readthedocs.org/en/latest/reference/query-builder.html

+0

谢谢。我不想在SELECT上调用WHERE方法两次。但是,如果我在同一页上同时使用SELECT和更新。问题是,如果我使用WHERE SELECT和更新,我只能设法保存最后一个值。我想从WHERE方法的值附加到SELECT变量和更新变量,如果我使用更新方法。希望这有道理:) – jeastogg 2014-11-02 18:11:12