例:对接微信API v3时可以这么来
/** * 微信支付交易类型 */ enum TradeType: int { case JSAPI = 1; case NATIVE = 2; case APP = 3; case MICROPAY = 4; case MWEB = 5; case FACEPAY = 6; case OTHER = 0; public function chs(): string { return match($this) { static::JSAPI => '公众号支付', static::NATIVE => '扫码支付', static::APP => 'APP支付', static::MICROPAY=> '付款码支付', static::MWEB => 'H5支付', static::FACEPAY => '刷脸支付', }; } }
TradeType::JSAPI->value //打印值:1
TradeType::JSAPI->name //打印值:JSAPI
TradeType::JSAPI->chs() //打印值:公众号支付
TradeState::from(1) //根据值返回枚举对象
$a = 'NATIVE';
constant('TradeType::' . $a); //根据name值返回枚举对象
上传以下图片:
![](../ebb_data/tran/2021-11/1637977777.png)
|