gpt4 book ai didi

PHP, OOP, 静态

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:03:31 24 4
gpt4 key购买 nike

我正在学习 PHP,OOP,我在 Static,在这php.net/static我没看懂这句话

Calling non-static methods statically generates an E_STRICT level warning.

根据上面的句子,我确实理解它仅对方法有效(不适用于属性),但我没有成功地理解它实际上,如果有什么可以告诉我解释上面句子的代码,我很高兴,祝您度过愉快的一周。

最佳答案

class Foo
{
public static $my_static = 'foo';
public $my_non_static = 'bar';

public function staticValue() {
return self::$my_static;
}

public function nonStaticValue() {
return self::$my_non_static;
}
}

print Foo::$my_static . "\n"; // OK
print Foo::staticValue(). "\n"; // E_STRICT

print Foo::$my_non_static . "\n"; // Fatal
print Foo::nonStaticValue(). "\n"; // Fatal

打印 Foo::$my_static 。 "\n"; 可以 - 静态访问的静态属性。

打印 Foo::staticValue()。 "\n"; 给出 E_STRICT - 静态访问的非静态方法,但不是 fatal error ,因为此方法不访问非静态属性。

其他两个给出 fatal error ,因为无法静态访问非静态字段。

关于PHP, OOP, 静态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10744357/

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