今天用PHP编写钉钉服务端API时初次使用了匿名类,由于我之前一直都是使用的PHP5.6或以下的版本,截止到现在对PHP7的新特性还不是很了解,今天尝试了一下PHP7的匿名类。
以下介绍匿名类:<?php
$fun = function (){
print '这是匿名函数'. PHP_EOL;
};
$fun();
class Animal
{
public $num;
public function __construct(...$args)
{
$this->num = $args[0];
}
public function getValue($su): int
{
return $this->num + $su;
}
}
$an = new Animal(4);
echo $an->getValue(12) . PHP_EOL;
echo '匿名类'. PHP_EOL;
echo (new class(11) extends Animal{})->getValue(12);
个人总结一下匿名类:调用非静态类时,代码编写更简洁。可以用来替代一些"用后即焚"的完整类定义。