laravel框架中视图的基本使用方法分析

时间:2022-10-23 23:36:06

本文实例讲述了laravel框架中视图的基本使用方法。分享给大家供大家参考,具体如下:

laravel中的视图默认保存在 resources\views 目录下。在控制器中,我们通常使用 view() 方法返回一个视图文件。

?
1
2
3
4
5
6
7
8
9
10
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class TestController extends Controller
{
  public function test(Request $request)
  {
    return view('test');
  }
}

对于有多层目录结构的视图,我们可以通过 (.) 点号进行分隔。

?
1
2
3
4
5
6
7
8
9
10
11
12
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class TestController extends Controller
{
  public function test(Request $request)
  {
    //查找 resources\views\test\test\index.blade.php
    //或 resources\views\test\test\index.php
    return view('test.test.index');
  }
}

我们可以通过 view() 的第二个参数 或 with() 方法来给视图传递数据。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class TestController extends Controller
{
  public function test(Request $request)
  {
    return view('test', [
      'id' => 1,
      'name' => 'test',
    ]);
  }
}

有些时候我们需要在所有视图*享一些变量。让这些变量在视图中都可以访问到。

常用做法是我们创建一个控制器基类,所有其他控制器继承该基类,然后在该基类的构造方法中使用 view()->share()来设置共享变量。

?
1
2
3
4
5
6
7
8
9
10
11
<?php
namespace App\Http\Controllers;
class BaseController extends Controller
{
  public function __construct()
  {
    view()->share('css_path', '');
    view()->share('img_path', '');
    view()->share('js_path', '');
  }
}

希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。

原文链接:https://www.cnblogs.com/jkko123/p/10805814.html