/** * @param \Difra\Unify\Paginator $paginator * @return self[] * @throws \Difra\Exception */ public static function getList($paginator = null) { $db = DB::getInstance(Users::DB); if ($paginator) { $limits = $paginator->getPaginatorLimit(); $usersData = $db->fetch("SELECT * FROM `user` LIMIT {$limits[0]},{$limits[1]}"); $total = $db->fetchOne('SELECT COUNT(*) FROM `user`'); $paginator->setTotal($total); } else { $usersData = $db->fetch('SELECT * FROM `user`'); } $users = []; foreach ($usersData as $data) { $user = User::load($data); $users[] = $user; } return $users; }