示例#1
0
 protected function _init()
 {
     foreach ($this::$_mixins as $class) {
         if (Vendors::class_exists($class)) {
             $this->__mixins[] = new $class($this);
         }
     }
 }
示例#2
0
 public static function initializable()
 {
     return Vendors::class_exists('\\mysqli');
 }
示例#3
0
 public static function initializable()
 {
     return Vendors::class_exists('\\SQLiteDatabase');
 }
示例#4
0
 protected function getControllerObject($class)
 {
     if (!is_int(strpos($class, '\\'))) {
         $class = $this->moduleClassTranslation($class);
     }
     if (Vendors::class_exists($class)) {
         $controller = new $class($this);
         return $controller;
     }
 }
示例#5
0
 public function fetch($query, $mixed = null)
 {
     // default options
     $class = false;
     $justFirst = false;
     $params = array();
     // unravel options
     if (is_array($mixed)) {
         if (is_int(key($mixed))) {
             $params = $mixed;
         } else {
             $class = Options::one($mixed, 'class', false);
             $justFirst = $mixed->get('single', $mixed->get('first', false));
             $params = $mixed->get('params', array());
         }
     } else {
         if (is_bool($mixed)) {
             $justFirst = $mixed;
         } else {
             if (is_string($mixed)) {
                 $class = $mixed;
             }
         }
     }
     // build SQL
     if (is_array($query)) {
         $query = $this->buildSQL($query);
     }
     // apply params
     if ($params) {
         $query = $this->replaceholders($query, $params);
     }
     $result = $this->result($query);
     Vendors::class_exists($class) or $class = false;
     if ($justFirst) {
         if ($class) {
             return $result->nextObject($class, array(true));
         }
         return $result->nextAssocArray();
     }
     if ($class) {
         return $result->allObjects($class, array(true));
     }
     return $result->allAssocArrays();
 }
示例#6
0
 /**
  * 
  */
 public static function _byQuery($query, $justFirst = false, $params = array())
 {
     // don't require $justFirst, so params can be passed as 2nd argument (in $justFirst)
     if (is_array($justFirst)) {
         $_jf = $justFirst;
         // allow reverse arguments: justFirst in $params
         $justFirst = is_bool($params) ? $params : false;
         $params = $_jf;
     }
     $class = get_called_class();
     if (Vendors::class_exists($class . 'Record') && is_a($class . 'Record', get_called_class())) {
         $class = $class . 'Record';
     }
     return static::dbObject()->fetch($query, array('class' => $class, 'single' => $justFirst, 'params' => $params));
 }