Laravel视图
在MVC框架中,字母 V 代表 Views 。它分离了应用程序逻辑和表示逻辑。视图存储在 resources / views 目录中。通常,该视图包含将由应用程序提供的HTML。
例
观察下面的例子来更多地了解视图 -
第1步 - 复制以下代码并将其保存在 resources / views / test.php
<html> <body> <h1>Hello, World</h1> </body> </html>
第2步 - 在 app / Http / routes.php 文件中添加以下行以设置上述视图的路线。
应用程序/ HTTP / routes.php文件
Route::get('/test', function(){ return view('test'); });
第3步 - 访问以下URL以查看视图的输出。
http://localhost:8000/test
第4步 - 输出将如下图所示。
将数据传递给视图
在构建应用程序时,可能需要将数据传递给视图。传递一个数组来查看帮助函数。在传递数组之后,我们可以使用该键来获取HTML文件中该键的值。
例
观察以下示例以更多地了解如何将数据传递到视图 -
第1步 - 复制以下代码并将其保存在 resources / views / test.php
<html> <body> <h1><?php echo $name; ?></h1> </body> </html>
第2步 - 在 app / Http / routes.php 文件中添加以下行以设置上述视图的路线。
应用程序/ HTTP / routes.php文件
Route::get('/test', function(){ return view('test',[‘name’=>’Virat Gandhi’]); });
第3步 - 密钥名称的值将被传递给test.php文件,$ name将被该值替换。
第4步 - 访问以下URL以查看视图的输出。
http://localhost:8000/test
第5步 - 输出将显示如下图所示。
与所有视图共享数据
我们已经看到了如何将数据传递给视图,但有时需要将数据传递给所有视图。Laravel使这更简单。有一种叫做 share() 的方法可以用于这个目的。该 股份() 方法将两个参数,键和值。通常可以从服务提供者的启动方法调用 share() 方法。我们可以使用任何服务提供商, AppServiceProvider 或我们自己的服务提供商。
例
请观察以下示例以了解有关与所有视图共享数据的更多信息 -
第1步 - 在 app / Http / routes.php 文件中添加以下行。
应用程序/ HTTP / routes.php文件
Route::get('/test', function(){ return view('test'); }); Route::get('/test2', function(){ return view('test2'); });
第2步 - 用相同的代码创建两个视图文件 - test.php 和 test2.php 。这些是将共享数据的两个文件。在这两个文件中复制以下代码。 resources / views / test.php&resources / views / test2.php
<html> <body> <h1><?php echo $name; ?></h1> </body> </html>
第3步 - 更改文件 app / Providers / AppServiceProvider.php中 的引导方法代码,如下所示。(在这里,我们使用了share方法,我们传递的数据将与所有视图共享。) app / Providers / AppServiceProvider.php
<?php namespace App\Providers; use Illuminate\Support\ServiceProvider; class AppServiceProvider extends ServiceProvider { /** * Bootstrap any application services. * * @return void */ public function boot(){ view()->share('name', 'Virat Gandhi'); } /** * Register any application services. * * @return void */ public function register(){ // } }
第4步 - 访问 以下网址。
http://localhost:8000/test http://localhost:8000/test2
第5步 - 输出将显示如下图所示。
下一章:Laravel Blade模板
Laravel 5.1引入了使用 Blade 的概念,这是一种模板引擎,用于设计独特的布局。这样设计的布局可以被其他视图使用,并且包括一致的设计和结构。与其他模板引擎相比,Blade在以下方面具有独特之处 - ...