問題是,當(dāng)我們調(diào)用 Types::A->value 時(shí),它??實(shí)際上創(chuàng)建了一個(gè)枚舉的實(shí)例,它不是一個(gè)常量值。 為了解決這個(gè)問題,定義一個(gè)常量并引用它。
<?php abstract class Type { public const A = 'a'; public const B = 'b'; } enum TypesEnum:string { case A = Type::A; case B = Type::B; } #[Attribute(Attribute::TARGET_CLASS)] class MyAttribute { public function __construct(public readonly array $mapping) { } } #[MyAttribute(mapping: [Type::A => ''])] class Entity { }
注意這個(gè)php 中的問題
微信掃碼
關(guān)注PHP中文網(wǎng)服務(wù)號(hào)
QQ掃碼
加入技術(shù)交流群
Copyright 2014-2025 http://m.miracleart.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號(hào)