是的,ThinkPHP支持模板继承。在ThinkPHP中使用模板继承需要使用到block
和extend
标签。具体来说,当我们需要在子模板中继承父模板的某些内容时,可以使用block
标签定义一个块;而在父模板中,我们需要使用extend
标签引入子模板,并使用block
标签对应子模板中定义的块进行覆盖或填充。以下是一个使用模板继承的示例:
<!-- 父模板 -->
<!DOCTYPE html>
<html>
<head>
<title>{% block title %}默认标题{% endblock %}</title>
</head>
<body>
<div class="container">
{% block content %}默认内容{% endblock %}
</div>
</body>
</html>
<!-- 子模板 -->
{% extend '父模板路径' %}
{% block title %}子模板标题{% endblock %}
{% block content %}
<p>子模板内容</p>
{% endblock %}
在上述代码中,我们可以看到父模板中的title
和content
块都有默认值,而子模板中则可以对它们进行覆盖或填充,最终渲染出来的内容就是子模板中定义的值。需要注意的是,block
标签中的内容是可选的,如果不需要覆盖父模板中的内容,可以不定义对应的块。
参考链接:ThinkPHP模板引擎之模板继承