什么是Laravel中的:: class php

时间:2018-06-20 21:06:32

标签: php laravel

对不起,英语不好!
我知道ClassName::Class将返回带有名称空间的类名称。
但是为什么在使用名称空间编写类名时在laravel中使用它呢?
喜欢:

\App\Http\Middleware\TrimStrings::class

我很困惑!
谁能告诉我:: Class到底是什么?

2 个答案:

答案 0 :(得分:0)

答案:

  

使用:: class语法,您可以声明一个类而无需   将其作为字符串传递。当他们更新ide时,它将有助于自动   填充不能使用字符串完成的名称空间。

来源信息:

自PHP 5.5起,class关键字也用于类名解析。您可以使用ClassName :: class获得包含ClassName类的全限定名称的字符串。这对于命名空间类特别有用。

示例#10类名称解析

<?php
namespace NS {
    class ClassName {
    }

    echo ClassName::class;
}
?>

上面的示例将输出:

NS\ClassName

注意:

  

使用:: class的类名称解析是编译时间   转型。这意味着当时的类名字符串是   创建没有自动加载发生。结果,类名   即使该类不存在,也会被扩展。没有发出错误   这种情况。

源链接 :: Php Manual

答案 1 :(得分:0)

我认为您的问题是重复的,以下是您寻求的答案: What is ::class in PHP?