|
@@ -16,6 +16,7 @@ class Base
|
|
|
"UPDATE" => "UPDATE %s SET ",
|
|
|
"DELETE" => "DELETE FROM %s %s",
|
|
|
"WHERE" => " WHERE %s",
|
|
|
+ "OR" => " `%s` = '%s' ",
|
|
|
"LIKE" => " `%s` LIKE '%s'",
|
|
|
"ORDER" => " ORDER BY %s %s",
|
|
|
"GROUP" => " GROUP BY %s",
|
|
@@ -741,6 +742,36 @@ class Base
|
|
|
}
|
|
|
return $this;
|
|
|
}
|
|
|
+ /**
|
|
|
+ * OR条件, 参数为数值
|
|
|
+ */
|
|
|
+ final function or($or, $opt = "AND")
|
|
|
+ {
|
|
|
+ if(empty($or)) return $this;
|
|
|
+ $orCond = array();
|
|
|
+ if(is_array($or)) {
|
|
|
+ foreach($or as $key => $val) {
|
|
|
+ $orCond[] = sprintf($key, $this->setQuote($val));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(!empty($this->where)) {
|
|
|
+ $this->where .= " OR (". join(" ". $opt . " ", $orCond) .")";
|
|
|
+ }
|
|
|
+ return $this;
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * OR 条件,参数为字符串
|
|
|
+ */
|
|
|
+ final function orStr($or, $opt = "OR") {
|
|
|
+ if(empty($or)) return $this;
|
|
|
+ if(is_array($or)) {
|
|
|
+ $or = join(" ". $opt . " ", $or);
|
|
|
+ }
|
|
|
+ if(!empty($this->where)) {
|
|
|
+ $this->where .= " OR (". $or . ")";
|
|
|
+ }
|
|
|
+ return $this;
|
|
|
+ }
|
|
|
|
|
|
/**
|
|
|
* 创建插入表的SQL
|