gpt4 book ai didi

php - PHP 中::和 -> 的区别

转载 作者:IT王子 更新时间:2023-10-29 00:00:08 28 4
gpt4 key购买 nike

我总是看到人们在严肃的项目中随处使用::,而 -> 只是偶尔在本地环境中使用。

我自己只使用 -> 并且永远不会遇到需要类外的静态值的情况。我是坏人吗?

据我所知,-> 无法正常工作的唯一情况是我尝试执行以下操作:

class StaticDemo {  
private static $static
}

$staticDemo = new StaticDemo( );

$staticDemo->static; // wrong
$staticDemo::static; // right

但是,当我不通过 :: 调用简单的公共(public)方法时,我是否错过了一些编程的正确性?

还是只是为了让我可以在不创建实例的情况下调用方法?

最佳答案

不实例化类时使用双冒号

class StaticDemo {...};
StaticDemo::static

如果要实例化,请使用 -->

class StaticDemo {...};
$s = new StaticDemo();
$s->static;

这在 http://php.net/manual/en/language.oop5.patterns.php 中有进一步解释。

关于php - PHP 中::和 -> 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2804775/

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