piszę bibliotekę do obsługi użytkownika w serwisie. na razie wygląda to tak jak przedstawione jest to poniżej. Jednak oprócz standardowych metod typu logowanie rejestracji itp, w klasie można znaleźć również metody obsługujące tzw.. tracking (czyli zliczanie ilości nie udanych pró

Oczywiście można to wrzucić to wszystko do jednej klasy ale czy nie lepiej to rozdzielić tak jak to przedstawiłem

abstract class Member_Tracker { public function __construct() { $this->CI = & get_instance(); } protected function tracker($login = "") { // init default values // load model // load config } protected function time_left() { // time left for user } protected function blocked() { // check if user has reach limit } protected function increment_failures($key, $id, $ip) { // +1 } protected function send_failure_notify($login, $ip, $failures) { // send email to user about failures } } interface Member_Base { // public function get_current_user(); // public function register(array $user_info); public function login($identification, $password = FALSE, $remember = FALSE); public function logout($redirect = FALSE); public function get_error(); } class Member extends Member_Tracker implements Member_Base { }