hoh*_*ner 2 php oop constructor class-design
我目前正在我的PHP类中使用构造函数来检查用户是否已登录.构造函数调用一个函数来检查它们是否有会话ID等 - 如果它们没有,它会将它们重定向到登录页面.这是我正在使用的想法:
function __construct() {
parent::__construct();
$this->check();
$this->mid = $this->session->userdata('member_id');
}
function check() {
if($this->mid == ''){
$this->login();
}
}
function signup() {
// registration code
}
Run Code Online (Sandbox Code Playgroud)
当然,这个构造函数在类中的每个其他函数之前运行.但是我有一个注册功能,需要用户在访问时不要登录.是否有任何方法可以使异常或覆盖该__construct功能,以便未登录的用户可以访问注册功能?
您需要重新设计代码.首先,您定义一个总是做某事的类(用户验证),然后您希望将该类用于没有该东西的用户(未经验证的用户); 为了避免完全破解,你应该重构你的代码,而不是寻找一个允许你解决你对你的课程的限制的补丁.