我想知道是否可以在我使用
设置的控制器中回调一个数组/字符串$this->set('gainedTotal', $this->Member->Point->gainedTotal());
我需要在方法中使用后一个值来进行计算。我当然可以将它存储在变量中,但我正在尝试保持我的代码简单和干净,所以我在想,因为它已经存储了,我可以回调它。
我尝试过像
这样的事情$this->request->gainedMonth
答案 0 :(得分:2)
我不相信它是可以访问的。
我建议你按照你提到的路线来做,然后创建一个变量:
$gainedTotal = $this->Member->Point->gainedTotal();
$this->set('gainedTotal', $gainedTotal);
您还可以一次“设置”多个变量,这有助于保持代码清洁:
$gainedTotal = $this->Member->Point->gainedTotal();
$something = "pizza";
$dessert = "more pizza";
$this->set(compact('gainedTotal', 'something', 'dessert'));
就个人而言,我不喜欢在set()
内调用方法。只是似乎没有干净的逻辑(个人品味),我几乎总是必须回来为我的find()
等添加其他变量或选项 - 这意味着我需要不止一个{{1}行,并进一步混乱我的代码。
答案 1 :(得分:0)
如果您只想将变量保留在同一控制器中,我建议您使用session
组件将其存储在会话中。
$this->Session->write('nameOfVariable', $variable);
稍后阅读:
$this->Session->read('nameOfVariable');