public function whereBetween($field, $start, $end, $operator = 'AND')
    {
        if ( ! in_array($operator, ['AND', 'OR'])) {
            throw new \InvalidArgumentException("Logical operator");
        }
        // create placeholder
        $start_plh = self::_getPlh();
        $end_plh = self::_getPlh();
        $this->_bind_params[$start_plh] = $start;
        $this->_bind_params[$end_plh] = $end;

        // is the first time call where method ?
        if ($this->_where_str == '') {
            $this->_where_str = ' WHERE '.self::_wrapRow($field).' BETWEEN '.$start_plh.' AND '.$end_plh;
        } else {
            $this->_where_str .= ' '.$operator.' '.self::_wrapRow($field).' BETWEEN '.$start_plh.' AND '.$end_plh;
        }

        return $this;
    }
public function whereBetween($field, $start, $end, $operator = 'AND')
    {
        if ( ! in_array($operator, ['AND', 'OR'])) {
            throw new \InvalidArgumentException("Logical operator");
        }
        // create placeholder
        $start_plh = self::_getPlh();
        $end_plh = self::_getPlh();
        $this->_bind_params[$start_plh] = $start;
        $this->_bind_params[$end_plh] = $end;

        // is the first time call where method ?
        if ($this->_where_str == '') {
            $this->_where_str = ' WHERE '.self::_wrapRow($field).' BETWEEN '.$start_plh.' AND '.$end_plh;
        } else {
            $this->_where_str .= ' '.$operator.' '.self::_wrapRow($field).' BETWEEN '.$start_plh.' AND '.$end_plh;
        }

        return $this;
    }
public function whereBetween ( $ field , $ start , $ end , $ operator = 'AND' ) { if ( ! in_array ( $ operator , [ 'AND' , 'OR' ] ) ) { throw new \ InvalidArgumentException ( "Logical operator" ) ; } // create placeholder $ start_plh = self :: _getPlh ( ) ; $ end_plh = self :: _getPlh ( ) ; $ this -> _bind_params [ $ start_plh ] = $ start ; $ this -> _bind_params [ $ end_plh ] = $ end ; // is the first time call where method ? if ( $ this -> _where_str == '' ) { $ this -> _where_str = ' WHERE ' . self :: _wrapRow ( $ field ) . ' BETWEEN ' . $ start_plh . ' AND ' . $ end_plh ; } else { $ this -> _where_str .= ' ' . $ operator . ' ' . self :: _wrapRow ( $ field ) . ' BETWEEN ' . $ start_plh . ' AND ' . $ end_plh ; } return $ this ; }
build whereBetween string

@param  string $field
@param  int $start
@param  int $end
@param  string $operator
@return  self
@throws  \InvalidArgumentException
build whereBetween string