让我们看下面的例子来了解更多关于视图
1 – 复制以下代码并保存在 资源/视图/test.blade.php
<html>
<body>
<h1>Laravel Blog Innovazione</h1>
</body>
</html>
2 – 在文件中添加以下行 路线/web.php 为上面的视图设置路径。
Route::get('/test', function() {
return view('test');
});
3 – 在浏览器中,我们在 URL 处打开页面以查看视图的输出。
http://localhost:8000/test
结果我们会看到文字“Laravel Blog Innovazione
” 在标题中 h1
地址 http://localhost:8000/test
在浏览器中设置将导致的路线 test
第二点指定,调出视图 test.blade.php
在第 1 点中指定。
在构建应用程序时,您可能需要将数据传递给视图。
要了解数据是如何传递给视图的,让我们继续看一个例子:
1 – 复制以下代码并保存在 资源/视图/test.blade.php
<html>
<body>
<h1><?php echo $name; ?></h1>
</body>
</html>
2 – 我们在文件中添加以下行 路线/web.php 为上面的视图设置路径。
Route::get('/test', function() {
return view('test',[‘name’=>’Laravel Blog Innovazione’]);
});
3 – 键对应的值 'name'
将被传递到文件 test.blade.php
$name 将被该值替换。
4 – 让我们访问以下 URL 以查看视图的输出。
http://localhost:8000/test
5 – 输出将以与第一个示例相同的文字出现在浏览器中,即文字“Laravel Blog Innovazione
” 在标题中 h1
我们已经看到了如何将数据传递给视图,但有时我们需要将数据传递给所有视图。 Laravel 让它变得更容易。 有一种方法叫 share()
可用于此目的。 方法 share()
将采用两个参数,键和值。 一般的方法 share()
可以从服务提供者的启动方法中调用。 我们可以使用任何服务提供商, 应用服务提供者 还是我们的 service provider
.
请参阅以下示例以了解有关与所有视图共享数据的更多信息 –
1 – 在文件中添加以下行 应用程序/Http/routes.php .
应用程序/Http/paths.php
Route::get('/test', function() {
return view('test');
});
Route::get('/test2', function() {
return view('test2');
});
2 – 我们创建两个视图文件: 测试.blade.php e 测试2.blade.php 使用相同的代码。 这是将共享数据的两个文件。 将以下代码复制到这两个文件中。 resources/views/test.blade.php
e resources/views/test2.blade.php
<html>
<body>
<h1><?php echo $name; ?></h1>
</body>
</html>
3 – 更改文件中的引导方法代码 应用程序/提供者/AppServiceProvider.php 如下所示。 (在这里,我们使用了共享方法,我们传递的数据将与所有视图共享。)
应用程序/提供者/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', 'Laravel Blog Innovazione');
}
/**
* Register any application services.
*
* @return void
*/
public function register() {
//
}
}
4 – 访问 以下网址。
http://localhost:8000/test
http://localhost:8000/test2
5 – 输出将以与第一个和第二个示例中相同的文字出现在浏览器中,即文字“Laravel Blog Innovazione
” 在标题中 h1
Ercole Palmeri
他们也可能对这些项目感兴趣: