如何翻译Yii2中的静态属性?

如何翻译Yii2中的静态属性?,yii,yii2,yii2-advanced-app,Yii,Yii2,Yii2 Advanced App,我想使用Yii::t('app',)转换静态属性 这是我的静态变量: public static $status = [ '1' => 'Active', '0' => 'In Active', ]; 如果我在这里这样翻译: public static $status = [ '1' => Yii::t('app','Active'), '0' => 'In Active', ]; 它向我抛出错误“常量表达式包含无效操作”。无法转换对象

我想使用
Yii::t('app',)
转换静态属性

这是我的静态变量:

public static $status = [
    '1' => 'Active',
    '0' => 'In Active',
];
如果我在这里这样翻译:

public static $status = [
    '1' => Yii::t('app','Active'),
    '0' => 'In Active',
];

它向我抛出错误“常量表达式包含无效操作”。

无法转换对象属性的默认值。最简单的解决方法是使用静态方法:

public function getStatuses(): array {
    return [
        '1' => Yii::t('app', 'Active'),
        '0' => Yii::t('app', 'Inactive'),
    ];
}

无法转换对象属性的默认值。最简单的解决方法是使用静态方法:

public function getStatuses(): array {
    return [
        '1' => Yii::t('app', 'Active'),
        '0' => Yii::t('app', 'Inactive'),
    ];
}

你也可以在类Cunstrator或init方法上给$status变量赋值。

你也可以在类Cunstrator或init方法上给$status变量赋值。

@MuhammadOmerAslam Bai jan aaj kal koi left nie hai。dakh le是ko。Aik tu YII2 ki community b slow hai:)不,它不像那个兄弟,agar kisi aur ne回复na kiya ho给zaroor kerta hu,你在下面贴了一个答案,应该是work@MuhammadOmerAslam明白了,兄弟nice@MuhammadOmerAslam白杨·阿杰·卡尔·科伊离开了聂海。请告诉我,我是科伊。艾克·图·伊奇社区b·斯洛·海:)不,这不像是那个兄弟,阿格·基西·奥恩·纳基亚·何给扎鲁尔·科塔·胡的回复,你有一个答案贴在下面,应该work@MuhammadOmerAslam知道了,兄弟,答案很好。我如何通过键获取单个状态,就像索引文件中的这样['attribute'=>'是活动的,'value'=>函数($model){return Lookup::getstatus($model->是活动的);},'filter'=>Lookup::getStatuses(),'filterInputOptions'=>['prompt'=>Yii::t('app','Select Status'),'class'=>'form control'],],,<代码>Lookup::getStatuses()[$model->处于活动状态]thanx获取答案。如何通过键获取单个状态,如索引文件['attribute'=>'is_active','value'=>function($model){return Lookup::getStatuse($model->is_active);},'filter'=>Lookup::getStatuses(),'filterInputOptions'=>['prompt'=>Yii::t('app','Select Status'),'class'=>'form control'],],,
Lookup::getStatuses()[$model->处于活动状态]