当前位置 : 主页 > 网络编程 > PHP >

如何使用ThinkPHP6的模板引擎

来源:互联网 收集:自由互联 发布时间:2023-08-07
ThinkPHP6是目前比较流行的一个PHP框架,它提供了很多方便的特性以及工具,其中之一就是内置的模板引擎。本文将介绍如何在ThinkPHP6中使用模板引擎。 一、创建模板文件 首先,我们需

ThinkPHP6是目前比较流行的一个PHP框架,它提供了很多方便的特性以及工具,其中之一就是内置的模板引擎。本文将介绍如何在ThinkPHP6中使用模板引擎。

一、创建模板文件

首先,我们需要在项目中创建一个模板文件夹,路径为:/application/index/view/,这个文件夹存放我们的模板文件。

接下来在模板文件夹中新建index.html文件,这个文件将作为我们的模板文件。

二、模板语法

ThinkPHP6使用了Twig模板引擎,并添加了自己的扩展功能。我们来学习它的基本使用方法。

  1. 输出变量

使用{{}}语法来输出变量。例如:{{title}}将输出变量$title的值。注意,变量名不需要使用$符号。

  1. if语句

if语句使用{% if condition %} ... {% endif %}语法。例如:

{% if isLogin %}
  <a href="#">退出登录</a>
{% else %}
  <a href="#">登录</a>
{% endif %}
  1. foreach语句

foreach语句使用{% for key, value in array %} ... {% endfor %}语法。例如:

{% for article in articles %}
  <div class="article">
    <h2>{{article.title}}</h2>
    <p>{{article.content}}</p>
  </div>
{% endfor %}
  1. include语句

include语句可以引入其他模板文件,使用{% include "file.html" %}语法。例如:

{% include "header.html" %}

<div class="content">
  ...
</div>

{% include "footer.html" %}

三、在控制器中使用模板

我们需要在控制器中将数据传递给模板引擎,然后再渲染模板。

在控制器中加载模板引擎并渲染模板的代码如下:

<?php
namespace appindexcontroller;

use thinkController;

class Index extends Controller
{
  public function index()
  {
    $this->assign('title', 'Welcome to my blog');
    $this->assign('isLogin', true);
    $this->assign('articles', [
      ['title' => 'article 1', 'content' => 'something'],
      ['title' => 'article 2', 'content' => 'something else']
    ]);
    return $this->fetch('index');
  }
}

上面的代码中,assign方法将数据传递给模板引擎。titleisLoginarticles是我们在模板文件中使用的变量名。

fetch方法用于渲染模板文件,它的参数是模板文件名,即index.html

四、结语

上一篇:如何在ThinkPHP6中实现队列监控?
下一篇:没有了
网友评论