예제 #1
0
 /**
  * Set options
  *
  * @return void
  */
 protected function _setCount($params = null)
 {
     $queryBuilder = $this->_getModel()->queryBuilder();
     if (isset($params['name'])) {
         $name = $params['name'];
         $names = explode($this->_separator, $name);
         $names = \Engine\Tools\String::quote($names);
         $queryBuilder->columnsName();
         $queryBuilder->where("name IN (" . $names . ")");
     } elseif (isset($params['query'])) {
         $name = $params['name'];
         $name = trim($params['query']);
         $queryBuilder->columnsName();
         $queryBuilder->where("name LIKE '" . $name . "%'");
     }
     $queryBuilder->setColumn("COUNT(id)", "count", false);
     if ($params) {
     }
     $result = $queryBuilder->getQuery()->execute();
     $this->_count = $result[0]['count'];
 }
예제 #2
0
 /**
  * Find records by array of ids
  *
  * @param string $column
  * @param string|array $values
  * @return  \Phalcon\Mvc\Model\ResultsetInterface
  */
 public static function findByColumn($column, $values)
 {
     $model = new static();
     $db = $model->getWriteConnection();
     if (is_array($values)) {
         $values = \Engine\Tools\String::quote($values);
         $credential = $column . " IN (" . $values . ")";
     } else {
         $credential = $column . " = " . $db->escapeString($values);
     }
     return static::find($credential);
 }