在控制器中
class acontroller extends Controller { private $variable; public function __construct(){ $this->variable; } public function first(){ $calculation = 1 + 1; $this->variable = $calculation; return view('something.view'); } public function second(){ dd($this->variable); return view('something.view2'); } }
这是一个例子.
我要做的是将第一种方法的计算结果传递给第二种方法.我期待在dd()中的第二个方法显示结果2但是我得到的是null.
出了什么问题以及如何解决这个问题?
解决方法
你真的应该重新设计它.你可以做的是创建第三种方法并在其中进行计算.然后从第一个和第二个调用此方法.
public function first(){ $this->third(); dd($this->variable); return view('something.view'); } public function second(){ $this->third(); dd($this->variable); return view('something.view2'); } public function third(){ $calculation = 1 + 1; $this->variable = $calculation; }
只需插入$this-> second();在$this->变量= $calculate之后;在第一种方法中.