Pero tio donde ves confundirme una interfaz con un metodo ? Y quien dijo que esta clase es entera o cualquier cosa de estas ? Pero tu lees algo de lo que escribo ? En ningun sitio digo que tiene que ser asi, solo dije por que seria mejor una cosa que sea con objetos y por que no roflmao. User dije que se una clase que tiene cosas que comparten todos los tipos de usuarios AdminLogin, MemberLogin, VipLogin aparte puedes tener MemberProfie. 1000 veces dije que este codigo no tiene AdminUser pero si lo puedes poner ...
IUserLogin es una interface que deben de implementar todos los tipos de login ... si tienes 1 pelota de futbol 1 pelota de baloncesto y 1 pelota de voleibol no tendran todas el metodo SALTAR y la variable COLOR ? y seria logico implementar una interfaz que les oblige tener el metodo saltar y la variable color
Cita: Si tienes una clase User, no es algo raro que exista un interfaz cuyo nombre contenga el nombre de otra clase.[
Otra vez te pregunto donde ves tu una clase o Metodo que tenga el nombre de un interface.
Cita: Implementa validar login y validar password, pero no implementa Login...Eso si que es un wtf
Wtf :/ ValidateUserPassword y ValidateUserName tiene la idea de comprobar si el nombre de usuario es valido en signos ... (ej: min 3 chars max 10, solo letras y digits etc.) y lo mismo de password Validar que es minimo digamos 6 chars y que contiene letras y numeros , que por dios tiene que ver esto con el login ? Esto se puede usar por el login por el register incluso por Ajax para validar en RT .... no tiene NINGUN sentido hacer un login ahi .. pone ValidateUserName no ValidateLogin or something like that ....
A ver si asi te explicas mejor lo que digo
Código PHP:
<?php
interface IUserLogin
{
public function Login(array $userLoginData);
public function Logout();
}
abstract class User
{
protected $_userName = "";
private $_additionalUserData = array();
protected function ValidateUserName($username){}
protected function ValidateUserPassword($username) {}
public function getUserName(){ }
protected function AddUserData($key, $data){}
protected function GetUserData($key){ }
}
class MemberLogin extends User implements IUserLogin
{
public function Login(array $userLoginData){ }
public function Logout(){}
}
class AdminLogin extends User implements IUserLogin
{
public function Login(array $userLoginData){ }
public function Logout(){}
}
class MemberProfile extends User { }
class AdminProfile extends User { }
class MemberRegister extends User { }
class MemberMessages
{
private $_member = null;
public function __construct(MemberLogin $member){}
}
?>