ZSC@LM
- ZSC@LM 2016-02-02 已签到连续签到1天,获得了5个金钱
- ZSC@LM 2015-12-31 已签到连续签到1天,获得了5个金钱
- ZSC@LM 2015-12-28 已签到连续签到1天,获得了5个金钱
- ZSC@LM 2015-11-20 已签到连续签到1天,获得了5个金钱
- ZSC@LM 赞了回答
如果常量数量多、汉字内容需要在线修改或增加的话,一般在数据库中建一个字典表,保存id和字面的映射关系,但平时变化不大可以写到缓存中,从缓存中读取,当内容发生变化时再更新缓存。
如果常量数量不多、汉字内容也不需要在线调整的话,可以新建一个统一管理id和字面关系的配置文件,比如放在common/config/constants.php里:
<?php return [ 'role' => [ 0 => '管理', 1 => '用户', 2 => '客户', ], ];
然后,在common/config/params.php里增加constants项:
<?php return [ 'constants' => require(__DIR__ . '/constants.php'), ];
在Model类(User)里可以增加一个配置索引项与constants中的内容关联:
const ADMIN = 0; //管理 const USER = 1; //用户 const CLIENT = 2; //客户 public static $constantIndex = 'role'; // 与constants.php里的配置组对应
这样,在业务代码中要获取id对应的字面就可以这样:
$adminRoleLabel = Yii::$app->params['constants'][User::$constantIndex][User::ADMIN];
或
foreach ($users as $user) { $roleLabel = Yii::$app->params['constants'][User::$constantIndex][$user->role]; }
- ZSC@LM 2015-10-28 已签到连续签到2天,获得了10个金钱
- ZSC@LM 2015-10-27 已签到连续签到1天,获得了5个金钱
- ZSC@LM 2015-10-22 已签到连续签到1天,获得了5个金钱
- ZSC@LM 2015-10-16 已签到连续签到1天,获得了5个金钱
- ZSC@LM 2015-10-08 已签到连续签到1天,获得了5个金钱