PHP verwendet ENUM in Eigenschaften
P粉593118425
2023-08-26 23:17:00
<p>Sehen Sie sich den folgenden Code an: </p>
<pre class="brush:php;toolbar:false;"><?php
Aufzählungstypen: string {
Fall A = 'a';
Fall B = 'b';
}
#[Attribute(Attribute::TARGET_CLASS)]
Klasse MyAttribute {
öffentliche Funktion __construct(öffentliches schreibgeschütztes Array $mapping)
{
}
}
#[MyAttribute(mapping: [Types::A->value => ''])]
Klasse Entität {
}
</pre>
<p>Fehler <code>Konstanter Ausdruck enthält ungültige Operation</code>. Ich möchte Enum-Werte in meinen Eigenschaften verwenden, um die Konfiguration zu definieren. Es sieht so aus, als wäre das ein Fehler in PHP. Sollte es gemeldet werden oder was? </p>
问题是,当我们调用 Types::A->value 时,它实际上创建了一个枚举的实例,它不是一个常量值。 为了解决这个问题,定义一个常量并引用它。
注意这个php 中的问题