在yii2中创建行为

时间:2016-10-04 10:19:51

标签: yii2 behavior

我在Yii 2中使用高级模板。我想为用户ID创建行为,所以我在common\components\behavior创建了一个文件夹并创建了一个类,

class UidBehavior extends Behavior
{

    public function encryptUid($id)
    {
        $id = md5($id);
        return $this->$id;
    }
}

然后在user.php =>

 'mybehavior' => [
     'class' => 'common\components\behavior\UidBehavior',
     'encryptUid' => 'id'
 ],

但发生错误

  

设置未知属性:common \ components \ behavior \ UidBehavior :: encryptUid

任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

您尝试在User.php上初始化encryptUid属性,如果不存在,您可以重写这样的代码然后一切正常:

class UidBehavior extends Behavior
{
  public $encryptUid;
  public function encryptUid($id)
   {
    $encryptUid = md5($encryptUid);
    return $this->$encryptUid;
   }
}

检查Refer Link