示例:
Auth::guard($guard)->guest()
我在laravel框架中没有得到双冒号(::)符号的含义。来自http://php.net/manual/en/language.oop5.paamayim-nekudotayim.php我了解到它代表范围解析运算符来访问类的静态,常量和重写属性或方法。但是从laravel我知道Auth
表示类外观的别名所以我需要对上面的例子进行解释,尤其是guard(parameter)->guest()
的意思。
我还是php的新手,现在正在为我的后端学习laravel框架。
答案 0 :(得分:2)
::
范围解析运算符
这被称为scope resolution operator
。此运算符用于引用某些块或程序上下文的范围,如类,对象,命名空间等。对于此引用,此运算符使用标识符来访问或重现该范围内的代码。
Auth::guard($guard)->guest()
:在这一行中,您使用的是静态类Auth
的 guard()方法。要使用静态类的功能,我们使用::
范围解析运算符。
答案 1 :(得分:1)
您可能会遇到这种方法来访问类的静态方法或属性。
例如:
class Foo
{
public static function bar()
{
return "bar";
}
}
Foo::bar // access the bar method without instantiating the Foo class.
答案 2 :(得分:0)
基本上知道
Scope resolution operator (::)
只是令牌,它允许访问类方法的静态,常量和覆盖属性
示例-在laravel中,我们称这样的模型
User::select('name')->get()->toArray()
;