php5.5新特性::class
2016年9月26日
没有评论
最近在了解laravel框架,发现它里面很多地方都使用了”类名::class”,这是php5.5以后新增的特性,功能有些类似get_class,不过get_class传入的是对象。
下面是官方手册中的描述和例子:
自 PHP 5.5 起,关键词 class 也可用于类名的解析。使用 ClassName::class 你可以获取一个字符串,包含了类 ClassName 的完全限定名称。这对使用了 命名空间 的类尤其有用。
<?php namespace NS { class ClassName { } echo ClassName::class; } ?>
以上例程会输出:NS\ClassName.
我们可以拿它和get_class做一个比较:
<?php NameSpace Test; class Test{ } var_dump(Test::class); $t = new Test; var_dump(get_class($t));
执行以后输出:
string(9) “Test\Test”
string(9) “Test\Test”
近期评论