PHP自动加载变量


PHP autloading variable

我不确定这是否可能,或者这是否是发布此类问题的正确位置,但这里是!

有没有任何方法可以自动加载具有相同名称的类的变量?例如:

class MyClass
{
    ....
    function display() { echo 'test'; }
}

我想知道是否有可能做到以下几点:

$MyClass->display();

而无需预先在$MyClass变量中创建MyClass类的实例。

正如我所说,我不确定这是否可能,如果这不是回答这种问题的合适地方,我会很乐意删除我的帖子。

更新谢谢你们的回复,伙计们,我想得越多,看完你们的评论后,我意识到这不是一个好主意,也真的不实用。

感谢

我认为您应该采取不同的方法,使用静态方法。

class MyClass
{
    ....
    static function display() { echo 'test'; }
}
MyClass::display();

无论类的哪个实例,都只能使用行为相同的函数来执行此操作。您的示例是一个静态方法,因为函数将始终返回test。如果函数必须使用实例变量或方法,那么就不能使用它。

我认为您想要一个静态类/函数。你可以做MyClass::display();

您可以做的是使方法static并直接在类上调用该方法:

class MyClass
{
    public static function display() { echo 'test'; }
}
MyClass::display();

除此之外:"自动加载"变量是不可能的。

使其成为一个静态方法。您不需要创建类的实例来调用静态方法。

class foo {
    private static $test;
    public static function test() {
        echo 'test';
    }
}

然后调用为:

foo::test();