PHP类构造

jul*_*lio 2 php class

我正在尝试写一个简单的类:

class tempClass 
{
    private $myvar          = null;

    function __construct()
    {
        $this->myvar    = 'temp';
        var_dump($this->myvar);
    }  

    public function getmyvar(){
        return $this->myvar;
    }
}   
Run Code Online (Sandbox Code Playgroud)

当我getmyvar()从一个页面调用公共函数时我会使用这个类(使用语法tempClass::getmyvar();),__construct()在我可以访问公共函数之前不应该自动调用该方法吗?它似乎没有 - 我必须做类似的事情:

$myclass = new tempClass();
$myclass->getmyvar();
Run Code Online (Sandbox Code Playgroud)

为了让构造函数被调用.有没有办法在调用类函数时"自动构造"这个类,而不是必须__construct在每个函数中执行代码?

谢谢!

Geo*_*ins 6

当对象实例"构造"时,将调用构造函数.换句话说,它是在创建实例时发生的.

执行此行时:

$myclass = new tempClass();
Run Code Online (Sandbox Code Playgroud)

实例化一个新对象,并执行构造函数.

当你使用::没有对象被实例化时,所以不调用构造函数.