php – MyClass :: class – 获取MyClass的字符串表示形式
双冒号(::)是
Scope Resolution Operator.
这用于访问受保护的方法和属性(和常量). 但是,我已经看到使用:: class来返回类的字符串表示形式.像这样: namespace App; class MyClass { } var_dump(MyClass::class); # string(11) "AppMyClass" 我已经搜索了很多关于这种行为的文档. 以上代码是否也使用范围解析运算符或者这是完全不同的东西?如果是这样,它的名字是什么? 如果它正在使用SRO,那是否意味着PHP在幕后放置了一个静态属性“class”? (虽然我无法覆盖这个静态属性) 解决方法
这是PHP5.5中的一个新功能,请参阅:
http://php.net/manual/en/language.oop5.basic.php#language.oop5.basic.class.class
这基本上是为了获得完整的班级名称.它也不是静态变量(请参阅前面的$),而是使用class关键字的语言功能.根据php.net上的说明:
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |