首页 > 编程笔记 > PHP笔记 阅读:10

PHP视图文件的创建和使用(附带实例)

PHP 程序中,为了输出程序的运行结果,通常是在控制器中使用 return 返回字符串。为了更好地输出一个 HTML 页面,我们可以利用视图来实现。

视图文件保存在 resources\views 目录中,用户也可以在该目录下创建子目录,将不同模块的视图放在不同的子目录中。

视图文件的名称以“.blade.php”或“.php”结尾,前者表示使用 Blade 模板引擎,后者表示不使用模板引擎。当使用 Blade 模板引擎时,可以在视图文件中使用模板语法,如 {{ $title }} 表示输出变量 $title 的值,也可以使用 PHP 原生语法,如 <?php echo $title; ?>。如果不使用模板引擎,则只能使用 PHP 原生语法。另外,如果存在同名的“.blade.php”和“.php”文件,前者会被优先使用。

在控制器中加载视图文件使用 view() 函数,在 view() 函数中指定视图名称,视图名称的前面还可以添加路径。例如,将视图文件放在 home\test 子目录中,则有如下两种写法:
return view('home/test/show');     // 写法1,用“/”分隔
return view('home.test.show');     // 写法2,用“.”分隔
上述写法对应的视图文件路径为 resources\views\home\test\show.blade.php。

需要注意的是,如果需要在视图文件中引入静态资源(如 CSS 文件、JavaScript 文件、图片),则应将静态资源保存在项目的 public 目录下,因为该目录是站点的根目录。

例如,将样式文件 style.css 保存到 public\css\style.css 中,在视图中应使用如下代码引入:
<link rel="stylesheet" href="/css/style.css">

下面演示视图文件的使用。创建视图文件后,在控制器中加载视图文件,具体步骤如下:
1) 创建 resources\views\show.blade.php 文件,具体代码如下:
<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Document</title>
  </head>
  <body>
    当前显示的视图文件是show.blade.php
  </body>
</html>

2) 创建视图文件后,在 TestController 控制器中创建 show() 方法,加载视图文件,具体代码如下:
public function show()
{
    // 加载视图文件resources\views\show.blade.php
    return view('show');
}
在上述代码中,view() 函数的参数表示视图名称,不需要传入文件扩展名。

3) 为了使 show() 方法可以被访问,将该方法添加到路由,具体代码如下:
Route::get('test/show', [TestController::class, 'show']);

4) 通过浏览器访问,运行结果如下图所示:


图 1 查看视图

相关文章