Пример #1
0
 /**
  * @param string|array|callable $name
  * @param string $operator
  * @param string $value
  * @return static
  */
 public function andWhere($name, $operator = null, $value = null)
 {
     if (!isset($this->where)) {
         $this->where = new WhereExpression();
     }
     $this->where->andWhere($name, $operator, $value);
     return $this;
 }
Пример #2
0
 public function testWhereChaining()
 {
     $query = new WhereExpression();
     $query->where('foo', 'foo string')->andWhere('bar', '>', 'bar string');
     static::assertEquals('WHERE `foo` = ? AND `bar` > ?', $query->toSql());
     static::assertEquals(['foo string', 'bar string'], $query->getBindings());
     $query = new WhereExpression();
     $query->andWhere('foo', 'foo string')->orWhere('bar', '<', 'bar string');
     static::assertEquals('WHERE `foo` = ? OR `bar` < ?', $query->toSql());
     static::assertEquals(['foo string', 'bar string'], $query->getBindings());
     $query = new WhereExpression();
     $query->orWhere('foo', 'foo string')->where('bar', 'bar string');
     static::assertEquals('WHERE `foo` = ? AND `bar` = ?', $query->toSql());
     static::assertEquals(['foo string', 'bar string'], $query->getBindings());
 }