paulomartinhago
1/22/2014 - 11:28 AM

Classe Usuários que pega dados de um determinado lugar (WebSercice, Banco de Dados, etc).

Classe Usuários que pega dados de um determinado lugar (WebSercice, Banco de Dados, etc).

<?php
 
class Connection {
        // ...
}
 
interface DataUsers {
        public function getUsers();
}
 
class MySQLUsers implements DataUsers {
        private $db;
 
        public function __construct(Connection $conn){
                $this->db = $conn;
        }
 
        public function getUsers(){
                // usar $this->db->prepare(...);
        }
}
 
class Users {
        private $users;
 
        public function __construct(DataUsers $users){
                $this->users = $users;
        }
 
        public function listarUsuarios(){
                return $this->users->getUsers();
        }
}
 
// Exemplo de uso
$dataManager = new MySQLUsers( new Connection() );
$users = new Users( $dataManager );
echo $users->listarUsuarios();