如何在PHP中从其他页面调用构造函数

问题描述 投票:0回答:1

我正试图从位于另一个PHP文件中的类中调用一个对象:

Login.php

        $user  = new LoginClass($usernameEntered); //where usernameEntered is just some form data that was submitted
        $user->login();
        echo "User: " .$user->getUser();

和班级:

class LoginClass
{
private $theUser="Default";

public function _construct($user)
{
    $this->theUser=$user;
}
public function login()
{
   // $this->theUser=$user;
    echo "I am in login with ". $this->theUser;
    session_start();
    $_SESSION["user"] = serialize($this);
    setcookie("user",$this->theUser,time() + (86400 * 30));
}
public function logout()
{
    session_destroy();
}
public function getUser()
{
    return $this->theUser;
}
}

我遇到的奇怪问题是,如果我移动$ this-> theUser = $ user;对于登录方法,一切正常,但是,如果我按原样保留代码,则Login.php似乎永远不会调用构造函数,并且永远不会设置$ theUser变量(也就是说,它会输出“ Default”)。我还有其他方法可以调用类构造函数,以便可以在构造函数中设置这些值吗?

php constructor getter-setter
1个回答
0
投票

您错过了1个下划线!

__construct()不是_construct()

© www.soinside.com 2019 - 2024. All rights reserved.