如何在 Yii2 中翻译 static 属性?
How can translate the static property in Yii2?
我想使用 Yii::t('app,'')
翻译静态 属性。
这是我的静态变量:
public static $status = [
'1' => 'Active',
'0' => 'In Active',
];
如果我在这里使用这样的翻译:
public static $status = [
'1' => Yii::t('app','Active'),
'0' => 'In Active',
];
它抛出错误 "Constant expression contains invalid operations"。
您无法翻译对象属性的默认值。解决它最简单的方法是使用静态方法:
public function getStatuses(): array {
return [
'1' => Yii::t('app', 'Active'),
'0' => Yii::t('app', 'Inactive'),
];
}
您还可以在 class cunstractor 或 init 方法上为 $status 变量赋值。
我想使用 Yii::t('app,'')
翻译静态 属性。
这是我的静态变量:
public static $status = [
'1' => 'Active',
'0' => 'In Active',
];
如果我在这里使用这样的翻译:
public static $status = [
'1' => Yii::t('app','Active'),
'0' => 'In Active',
];
它抛出错误 "Constant expression contains invalid operations"。
您无法翻译对象属性的默认值。解决它最简单的方法是使用静态方法:
public function getStatuses(): array {
return [
'1' => Yii::t('app', 'Active'),
'0' => Yii::t('app', 'Inactive'),
];
}
您还可以在 class cunstractor 或 init 方法上为 $status 变量赋值。