php - User Yii::t() value for arrays values -


i´m in proyect yii php framework , in muy model have public static array constante index this:

const estado_activa    = 1; const estado_rechazada = 2; const estado_aceptada  = 3; public static $estados = array(     self::estado_activa    => 'activa',     self::estado_rechazada => 'rechazada',     self::estado_aceptada  => 'aceptada' ); 

i need replace 'activa' this

    const estado_activa    = 1; const estado_rechazada = 2; const estado_aceptada  = 3; public static $estados = array(     self::estado_activa    => yii::t('category','activa'),     self::estado_rechazada => yii::t('category','rechazada'),     self::estado_aceptada  => yii::t('category','aceptada'), ); 

when try error:

parse error: syntax error, unexpected '(', expecting ')'

i don´t understand what´s wrong. all..

using yii way (like in docs) create estados method:

const estado_activa    = 1; const estado_rechazada = 2; const estado_aceptada  = 3; public static function estados() {     return array(         self::estado_activa    => yii::t('category','activa'),         self::estado_rechazada => yii::t('category','rechazada'),         self::estado_aceptada  => yii::t('category','aceptada'),     ); } 

this way dont need instantiate class.

edit: if don't want evaluate yii::t @ each call, use cached version:

const estado_activa    = 1; const estado_rechazada = 2; const estado_aceptada  = 3;  private static $_estados = null;  public static function estados() {     if(null === self::$_estados)     {         self::$_estados = array(             self::estado_activa    => yii::t('category','activa'),             self::estado_rechazada => yii::t('category','rechazada'),             self::estado_aceptada  => yii::t('category','aceptada'),         );     }     return self::$_estados; } 

with approach yii::t calls evaluated once.


Comments

Popular posts from this blog

linux - xterm copying to CLIPBOARD using copy-selection causes automatic updating of CLIPBOARD upon mouse selection -

c++ - qgraphicsview horizontal scrolling always has a vertical delta -