【发布时间】:2021-12-15 04:56:53
【问题描述】:
我正在尝试了解 PHP 中的属性是如何工作的。但是当我编写一些代码(我安装了支持 PHP 8 的 XAMPP)时,它似乎不起作用(屏幕上没有消息)。是否需要额外的配置才能工作?
use Attribute;
class MyAttribute {
public function __construct($message) {
// I want to show this message when using MyAttribute
echo $message;
}
}
#[MyAttribute('hello')]
class SomeClass {
// ...
}
这段代码不应该显示“你好”消息吗?还是我不明白什么?它没有显示任何内容。
【问题讨论】:
-
您是否希望它运行以
#开头的行 -
@NigelRen 如果您不知道,
#[...]是 PHP 8.0 中为属性 AKA 注释引入的语法。它在这里作为注释突出显示,并且将被早期版本的 PHP 视为一个(这是最终选择语法的原因之一),但它确实是对MyAttribute类构造函数的引用。这个问题是合理的,Kazz 的回答解释了缺失的部分。
标签: php php-8 php-attributes