php匿名类是什么意思
在PHP中,匿名类是指没有名字的类,匿名类不能被引用,可以利用“new class”来创建一个匿名类,语法为“new class(参数1, 参数2, …){成员属性和方法;};”;一个匿名类只能创建一次对象。
本文操作环境:Windows10系统、PHP7.1版、Dell G3电脑。
php匿名类是什么意思
匿名类就是指没有名字的类,它们不能被引用。因为匿名类没有名字,所以一个匿名类就只能创建一次对象。
可以通过new class来创建一个匿名类,与普通类的定义相似,不同点就是不需要设置类名,如下所示:
new class(参数1, 参数2, ...){ 成员属性和方法; };
下面我们来看一个简单的例子,如下所示:
<?php $name = new class('中文网'){ private $name; public function __construct($name){ $this->name = $name; } public function output(){ echo $this->name; } }; $name->output(); ?>
匿名类可以在一个类的内部方法中声明,也可以直接赋值给变量。当匿名类被嵌套进普通类后,不能访问这个外部类中使用 private、protected 修饰的方法或者属性。如果要访问外部类使用 protected 修饰的属性或方法,可以使用匿名类来继承此外部类。如果要使用外部类使用 private 修饰的属性,则必须通过构造器传进来。
推荐学习:《PHP视频教程》