PHP中的公共静态函数和静态公共函数有什么区别吗?

我们声明了一个公共静态函数,我总是使用:


class Foo {

    public static function bar() {}

}

但是,我读了一个图书馆,在那里我看到了:


class Foo {

    static public function bar() {} // Note the inversion of public and static

}

然后我尝试在这个小片段中比较两种设计:


class Test {

    public function __construct() {

        $a = self::a();

        $b = self::b();


        var_dump($a, $b);

    }


    static public function a() {

        return "a";

    }


    public static function b() {

        return "b";

    }

}

正如预期的那样,我在调试器中看到了“a”和“b”。


慕尼黑的夜晚无繁华
浏览 214回答 2
2回答

慕村225694

根据语言没有,但根据编码风格 PSR-2 有。PSR-2如果您不关心编码标准,您可以同时使用两者,但我强烈建议您应用通用标准。必须在所有属性和方法上声明可见性;abstract 和 final 必须在可见性之前声明;static 必须在可见性之后声明。还有一件事,虽然在 php 官方文档中没有建议的编码方式,但您可以将其用作指南PHP-FIG您可以在那里找到许多资源,这些资源将对您的所有相关问题有所帮助。

互换的青春

这是一样的。约定是“[public|protected|private] [static] function”所以 public static function b()
打开App,查看更多内容
随时随地看视频慕课网APP