thinkphp3.2.3关于模板使用之一二


  select.html

{include file=”header.html”}  不可以省略.html

(2)如果我们不想开启模板配置功能,仅仅在本网页使用默认模板,就可以使用标签模式了

<include file=”header”>   或者是<include
file=”header.html”>   

  ThinkPHP
的模版引擎内置了布局模版功能支持,可以方便实现模版布局以及布局嵌套功能。有三种布局方式:

1、smarty

   (1)我们首先在default文件夹下面创建两个文件header.html
 /footer.html,分别为:

在模板文件中,使用定界符

    <extend name=”Public/basic.html”>

2、thinkphp的html文件中

    <block name=”title”>index的头标题</block>

 (2)然后在使用的时候分别调用就可以了,别如index.html

<!DOCTYPE html PUBLIC ‘-//W3C//DTD HTML 4.01 Strict//EN’
http://www.w3.org/TR/html4/strict.dtd'&gt;
<html>
<head>
<meta http-equiv=’Content-Type’ content=’text/html;
charset=UTF-8′>
<title>在此插入标题</title>
</head>
<body>
<include file=”Public/header”/>

  UserController.class.php

  <div id=”header”>这里是header文件</div>
  <hr/>

        <div id=”header”>这里是header文件</div>
        <hr/>

     header.html

  //引入指定基页
  public function index() {
  layout(‘Public/layout’);
  //layout(false); //关闭
  }

      a.首先我们需要配置核心配置文件config.php

        <!DOCTYPE html PUBLIC ‘-//W3C//DTD HTML 4.01 Strict//EN’
http://www.w3.org/TR/html4/strict.dtd'&gt;
        <html>
        <head>
        <meta http-equiv=’Content-Type’ content=’text/html;
charset=UTF-8′>
        <title><block
name=”title”>在此插入标题</block></title>
        </head>
        <body>    

 
 首先检查配置文件查看我们的主题目录在哪儿,我们可以在核心配置文件中查看:’DEFAULT_THEME’=>’default’,所以我的是在默认主题下。就也是说在:

  <block
name=”main”></block><!–将footer.html文件内容包含–>

     index.html

      

(3)layout控制布局

  <include file=’Public/header’ />

    <block name=”title”>select.html的头标题</block>

(2)此时还需要改变header.html,footer.html的内容(因为基础文件basic.html中已经包含了网页基础公共部分)

在PUblic/下面创建一个layout.html文件

 
 使用场景:比如我们在编写网页布局的时候,可能每一个网页的头和脚是相同的,此时如果给每一个网页分别设置,未免太麻烦了。此时就可以使用带包含文件。

     </body>
     </html>

  <hr/>
  <div id=”footer”>这里是footer文件</div>

      //开启模版布局功能,并指定基础页
  ’LAYOUT_ON’=>true,
  ’LAYOUT_NAME’=>’Public/layout’,
   
 b.此时当我们在View/User/下任意新建一个HTML文件时就会使用到这个layout.html网页模板

      成功了
  <include file=’Public/footer’ />

    footer.html

  使用上面所述的文件包含方法发现,每一个网页的<title></title>的值是相同的,显然是不合适的。那如何解决呢?这就使用到了模板继承

    <block>网页主题内容(即body体中的内容)</block>

     //子模版引入模版基页
  <layout name=”Public/layout” />

1.包含文件

     header.html

     footer.html

(1)首先在Public/目录下创建一个basic.html,内容如下(这是基本的网页框架)    

  <!DOCTYPE html PUBLIC ‘-//W3C//DTD HTML 4.01 Strict//EN’
http://www.w3.org/TR/html4/strict.dtd'&gt;
  <html>
  <head>
  <meta http-equiv=’Content-Type’ content=’text/html;
charset=UTF-8′>
  <title><block
name=”title”>在此插入标题</block></title>
  </head>
  <body>
  <include
file=”Public/header”/><!–将header.html文件内容包含–>

  <include file=”Public/footer”/>
  </body>
  </html>

<include file=”Public/footer”/>
</body>
</html>

     <hr/>
     <div id=”footer”>这里是footer文件</div>

   Home/View/default/User下面。

    <block>网页主题内容(即body体中的内容)</block>

    <extend name=”Public/basic.html”>

(3)使用方法index.html/select.html

    这个方法是直接在控制器中使用

3.模板布局

{__CONTENT__}

(1)全局配置方式

2.模板继承