從接觸編程,到 PHP,總共學習了三個月,剛接觸 laravel 框架沒多久
對于新人來說,感覺傳值有的時候看起來太迷惑。所以在這里整理一下,水平有限,也是第一次用 markdown 寫文檔有任何錯誤或者需要改進的地方請諸位悉心賜教。
總體內容分為傳值類型和方法,大概總體感覺如下。
傳值類型:一個值,多個值,數組。
方法: with,view,compact
默認視圖 test 文件下 index.blade.php
單個值的傳遞
with
public function index() {
$test = "測試";
return view('test.index')->with('test',$test);
}
view
public function index() {
return view('test.index', ['test' => '測試']);
}
compact
public function index() {
$test = "測試";
return view('test.index',compact('test'));
}
多個值的傳遞
with
public function index() {
return view('test.index')->with(["test1" => "測試1", "test2" => "測試2", "test3" => "測試3"]);
}
view
public function index() {
return view('test.index', ['test1' => '測試1','test2' => '測試2','test3' => '測試3']);
}
compact
public function index() {
$test_1 = "測試1";
$test_2 = "測試2";
$test_2 = "測試3";
return view('test.index',compact('test_1','test_2' ,'test_3' ));
}
數組的傳遞
with
public function index() {
$data = array( 'test1' => '測試1', 'test2' => '測試2', 'test3' => '測試3' );
return view('test.index')->with($data);
}
view
public function index() {
$data["test1"] = "測試1";
$data["test2"] = "測試2";
$data["test3"] = "測試3";
return view('test.index',$data);
}
compact
//推薦此種方法
public function index() {
$test_array = ["測試1","測試2", "測試2"];
return view('test.index',compact('test_array'));
}
以上就是最近整理出來的一些傳值方法,不知道寫法上還有什么更聰明的寫法。