gpt4 book ai didi

php - 覆盖 PHP __construct

转载 作者:行者123 更新时间:2023-12-02 06:41:37 26 4
gpt4 key购买 nike

我目前在我的 PHP 类中使用构造函数来检查用户是否登录。构造函数调用一个函数来检查它们是否有 session 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
}

当然,这个构造函数在类中的所有其他函数之前运行。但是我有一个注册功能,需要用户在访问时不登录。有什么方法可以使__construct 函数异常或覆盖,以便未登录的用户可以访问注册函数?

最佳答案

您需要重新设计您的代码。首先你定义了一个总是做某事的类(用户验证),然后你想为没有那个东西的用户(未验证的用户)使用该类;为避免完全被黑客攻击,您应该重构您的代码,而不是寻找一个补丁来解决您对类施加的限制。

关于php - 覆盖 PHP __construct,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6740405/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com