首页 > PHP > php5.5新特性::class

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”

分类: PHP 标签:
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.
您必须在 登录 后才能发布评论.