ThinkPHP-模板布局和继承(三)

2023-05-02 19:11:00 浏览数 (2)

模板布局

模板布局是指在视图文件中定义一个公共的布局,其他的视图文件可以继承该布局,并在其中插入自己的内容。这种方式可以减少代码的重复性,同时也可以方便地管理页面结构和样式。

定义布局

在 ThinkPHP 中,可以通过定义公共的布局文件来实现模板布局。首先,在项目的 application 目录下,创建一个 layout 目录,并在其中创建一个名为 base.html 的布局文件。该文件中定义了整个页面的基本结构,如下所示:

代码语言:javascript复制
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>{$title}</title>
</head>
<body>
    <div class="container">
        <div class="header">
            <h1>Header</h1>
        </div>
        <div class="content">
            <!-- 子视图的内容将插入到这里 -->
            {__CONTENT__}
        </div>
        <div class="footer">
            <h3>Footer</h3>
        </div>
    </div>
</body>
</html>

在该布局文件中,使用了一个占位符 {__CONTENT__} 来表示子视图的内容将插入到这里。

使用布局

接下来,在需要使用该布局的视图文件中,使用 extend 指令来继承该布局。同时,在视图文件中可以使用 block 指令来定义一个块,并在其中插入自己的内容。如下所示:

代码语言:javascript复制
{extend name="layout/base"}

{block name="title"}首页{/block}

{block name="content"}
    <h2>欢迎来到我的网站!</h2>
    <p>这是我的第一个 ThinkPHP 网站。</p>
{/block}

在该视图文件中,使用 extend 指令来继承名为 layout/base 的布局文件。同时,使用 block 指令来定义名为 titlecontent 的块,并在其中插入自己的内容。

0 人点赞