Laravel模板包含的用法(附带实例)
模板包含的思路与模板继承正好相反,它是把多个页面中相同的部分抽取到子页面中,然后通过 @include() 将公共部分包含进来,得到完整的页面,如下图所示。

图 1 模板包含示意图
在图 1 中,主页面只有内容区域中有内容,头部区域和尾部区域的内容被拆分到两个子页面中。当主页面需要显示子页面时,会从主页面中包含子页面。
模板包含使用 @include() 实现,其参数是模板文件的名称。下面通过具体操作演示如何实现模板包含,具体步骤如下:
1) 创建主页面文件 resources\views\main.blade.php,具体代码如下:
2) 创建头部区域文件 resources\views\header.blade.php,具体代码如下:
3) 创建尾部区域文件 resources\views\footer.blade.php,具体代码如下:
4) 在 TestController 的 show() 方法中通过 view() 加载主页面,具体代码如下:
5) 通过浏览器访问,运行结果如下图所示:

图 2 模板包含页面效果

图 1 模板包含示意图
在图 1 中,主页面只有内容区域中有内容,头部区域和尾部区域的内容被拆分到两个子页面中。当主页面需要显示子页面时,会从主页面中包含子页面。
模板包含使用 @include() 实现,其参数是模板文件的名称。下面通过具体操作演示如何实现模板包含,具体步骤如下:
1) 创建主页面文件 resources\views\main.blade.php,具体代码如下:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> @include('header') <div>内容区域</div> @include('footer') </body> </html>在上述代码中,第8行和第10行代码使用@include()实现模板包含。
2) 创建头部区域文件 resources\views\header.blade.php,具体代码如下:
<header>头部区域</header>
3) 创建尾部区域文件 resources\views\footer.blade.php,具体代码如下:
<footer>尾部区域</footer>
4) 在 TestController 的 show() 方法中通过 view() 加载主页面,具体代码如下:
public function show() { return view('main'); }
5) 通过浏览器访问,运行结果如下图所示:

图 2 模板包含页面效果