2016-10-07 13:34:06 3638次浏览 2条回答 0 悬赏 10 金钱

在model A , afterSave()函数中定义一个变量 $x,
怎样在model B 中引用$x

补充于 2016-10-07 18:24

最佳答案

  • 飘逸 发布于 2016-10-08 10:27 举报

    如果变量 $x 具有代表性意义的话,你可以在 model A 中声明一个属性。

    public $x;  
    

    然后在afterSave()中以变量 $x 为这个属性赋值;

    $this->x = $x;
    

    接下来你就可以在model B 中

    $a = new A;
    
    ....model A 的一系列数据库操作之后,也就是调用afterSave()之后;
    echo $a->x;
    
  • 回答于 2016-10-07 14:29 举报
    use backend\models\BackendLog;
    
    $backend_logmodel = new BackendLog();
    $backend_logmodel->setAttribute('user_id', $userss_id);
    
    1 条回复
    回复于 2016-10-07 18:26 回复

    还是不明白,你的意思是 把变量当成一个字段增加到 model A 中吗?
    $backend_logmodel = new BackendLog(); 是根据model BackendLog新增一条记录?
    $backend_logmodel->setAttribute('user_id', $userss_id);) 这个函数没查出来,

    我现在的需求是 有 model A ,model B, model C

    在model A , 有一个字段“A1” ,当新增一条记录 保存后, 根据 A1 用正则生成两个变量 $v1, $v2
    运行在model B 和C 的函数 addB($v1) addC($v2)

您需要登录后才可以回答。登录 | 立即注册
38907
等待激活

38907

注册时间:2016-10-31
最后登录:1970-01-01
在线时长:0小时0分
  • 粉丝0
  • 金钱15
  • 威望0
  • 积分15

热门问题