您的位置:首页 > 编程语言 > PHP开发

Laravel学习笔记1-laravel基本工作流程

2017-01-04 00:00 459 查看
1.路由

首先我们需要定义路由,然后通过它访问对应的控制器方法或直接匿名函数处理后返回.

//访问/test1路由会直接输出 Hello World
Route::get('/test1', function () {
return 'Hello World';
});
//此路由访问会去调用根目录下resources\views\welcome.blade.php 模板文件
Route::get('/test2', function () {
return view('welcome');
});

//路由指向控制器方法
Route::get('/test','TestController@index');

路由指向控制器方法,需要先用命令创建控制器

php artisan make:controller TestController

php artisan make:controller TestController --plain

第一条命令可生成带各种所需引用的控制器文件,第二命令生成标准化的控制器.

然后就可以在TestController控制器里边写方法逻辑了.

2.给视图传递变量

//1.直接数据传递
public function index(){
$data = [
'first' => 'Jonny',
'last' => 'Chen',
];
return view('welcome',$data);
}

//2.使用with单个传递
public function test1(){
$first = 'Jonny';
return view('welcome')->with('first',$first);
}

//3.使用with整个数组形式传递
public function test2(){
$data = [
'first' => 'Jonny',
'last' => 'Chen',
];
return view('welcome')->with($data);
}

//4.使用compact方法多个变量的名称传递
public function test(){
$first = 'Jonny';
$last = 'Chen';
return view('welcome',compact('first','last'));
}

3.视图里边使用

我们可以在welcome.blade.php里边把上面控制器方法传递过来的变量输出.

<div class="title m-b-md">
{{$first}} {{$last}}
</div>

使用两个大括号表示输出变量

Blade 的 {{}} 语句已经经过 PHP 的 htmlentities 函数处理以避免 XSS 攻击。

如果你不想要数据被处理,可以使用如下语法:Hello, {!! $name !!}.如果变量有HTML代码,会直接输出 HTML 代码

注:如果视图里边输出了没有传递的变量,访问路由会报错.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: