Laravel 控制器 Controller 传值到 视图 View 的几种方法总结

时间:2023-03-08 16:34:23

单个值的传递

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'));
}