传统MVC模式,分为模型、控制器和视图。视图是用来存放html文件的,laravel的视图文件存放在resources/views目录下。下面来创建一个视频
创建视图
Route::get('/v1', function () { return view('v1'); });
建立resources/views/v1.blade.php文件,内容如下:
hello world
子目录视图
对于子目录的视图,要使用.操作符来指定。比如,resources/views/home/index.blade.php,那么则需要
return view(home.index);
判断视图是否存在
有时候需要判断一个视图是否存在,需要使用exists方法。如下:
if (view()->exists('v1')) { // }
向视图传递数据
一般视图中使用纯html的情况时非常少了,经常需要向视图传递参数。在laravel中,有几种方法可以向视图传递参数。可以在view函数中的第二个参数中传递一个关联数组,这样视图就可以拿个该数据了,如下:
return view('v1', ['name' => 'laravel', 'act' => 'study']);
在视图中使用参数需要使用{{$key}}
{{$act}} {{$name}}
还可以使用with方法来传递参数,该方法支持连贯操作
return view('v1') ->with(['name' => 'laravel', 'act' => 'study']) ->with('title', 'php.cn');
所有视图共享数据
在多个视图内共享数据是一个常见的需求,可以在app/Providers/appServiceProvider中设置;
public function boot() { // view()->share('key', 'val'); }
视图合成器与构造器
视图合成器与构造器类似于php类中构造函数与析构函数,合成器是在视图展示之前执行的一段业务逻辑,而构造器则是在视图渲染完毕后执行的一段业务逻辑。
因为用到的不多,所以关于视图的合成器和构造器这里就不演示如何操作了。有兴趣的童鞋可以自行查询文档。
视图的编译文件
视图文件是需要编译的,编译产生的文件保存在storage/framework/views文件下。默认情况下,视图文件是按需编译的,但编译文件不存在或视图文件做了修改时,视图文件就会被重新编译。但是,在获取请求时编译视图文件会有性能影响。因此,laravel提供了一个工具,可以一次性编译所有视图文件。
php artisan view:cache
于此向对应的还有删除所有视图的编译文件命令
php artisan view:clear
推荐教程:《laravel框架》
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!
Introduction aux composants Laravel
Introduction au middleware Laravel
Quels sont les modèles de conception utilisés par Laravel ?
Lequel est le plus simple, thinkphp ou laravel ?
moyens visibles
La fonction de la commande net user
Que sont les frameworks d'intelligence artificielle Python ?
package de mise à niveau mcafee