ThinkPHP - 模板引擎

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ThinkPHP - 模板引擎相关的知识,希望对你有一定的参考价值。

1、导入css/js文件
    - CSS文件
    <!--<link rel="stylesheet" type="text/css" href="__CSS__/basic.css">-->
    <!--<import type="css" file="Css.basic"/>-->
    <!--<load href="__PUBLIC__/Css/basic.css" />-->
    
    - JS文件
    <!--<script type="text/javascript" src="__JS__/basic.js"></script>-->
    <!--<import type="js" file="Js.basic" />-->
    <!--<load href="__PUBLIC__/Js/basic.js" />-->

2、判断语句
    - if
        · if else
            <if condition="$sex eq ‘1‘">
                男性
                <else />
                女性
            </if>
        · if elseif
            <if condition="$age lt ‘18‘">
                未成年
                <elseif condition="$age eq ‘18‘"/>
                18岁
                <else />
                成年
            </if>

    - switch
        <switch name="num">//此时变量不加$
            <case value="1">输出1</case>
            <case value="2">输出2</case>
            <default />默认项
        </switch>



3、循环结构
    - volist
        <volist name="list" id="vo">
            {$vo.id}
            {$vo.name}
        </volist>
    - foreach 同volist相似
        <foreach name="list" item="vo">
            {$vo.id}
            {$vo.name}
        </foreach>
    - for
        · 格式
            <for start="开始值" end="结束值" comparison="" step="步进值" name="循环变量名" >
            </for>
        · 例子
            <for start="1" end="100">
            {$i}
            </for>
        · 转换结果
            for ($i=1;$i<100;$i+=1){
                echo $i;
            }


4、特殊标签
    - 比较标签
        系统支持的比较标签以及所表示的含义分别是:
        eq    等于
        neq    不等于
        gt    大于
        egt    大于等于
        lt     小于
        elt     小于等于
        heq     恒等于
        nheq     不恒等于
        --------------------------------
        <eq name="sex" value="1">男</eq>
        <gt name="num" value="6">10>6</gt>    
        //这一种更好用
        <compare name="num" value="5" type="GT">10>5</compare>    

    - 范围标签
        · in 比较范围
            <!--<in name="id" value="1,2,3">输出内容1</in>-->
            <!--<notin name="id" value="1,2,3">输出内容2 </notin>-->
            <!--<in name="id" value="1,2,3">输出内容1<else/>输出内容2</in>-->
        
        · between 区间标签
            <!--<between name="id" value="1,10">输出内容2</between>-->
            <!--<notbetween name="id" value="1,10">输出内容1</notbetween>-->

        · Present 标签
            present标签来判断模板变量是否已经赋值。
        
        · Empty
            empty标签判断模板变量是否为空。

        · Define 标签
            define标签进行常量定义。

        · Defined 标签
            defined标签判断常量是否已经有定义。
            
        · Assign 标签
            assign标签进行赋值。



5、其他标签
    - php标签
        <?php echo ‘Hello,world!‘; ?>
        //建议使用这种
        <php>echo ‘Hello,world!‘;</php>
        
    - 修改左右定界符
        在配置文件中
            ‘TMPL_L_DELIM‘=>‘<{‘,
            ‘TMPL_R_DELIM‘=>‘}>‘,






一、模板包含
    - header.html
        <!DOCTYPE html>
        <html>
        <head>
            <meta http-equiv="Content-Type" contect="text/html";charset=utf-8">
            <meta name="keywords" content="[keywords]">
            <meta name="description" content="[description]">
            <title>[title]</title>
            <load href="__PUBLIC__/Css/basic.css" />
        </head>
        <body>
        
        
    - footer.html
        <load href="__PUBLIC__/Js/basic.js" />
        </body>
        </html>
        
        
    - index.html
        <!-- 包含头文件 -->
        <include file="Public:header" title="ThinkPHP框架" keywords="开源WEB开发框架" description="这里是描述内容" />

        <div>
            <p>nriotng</p>
        </div>

        <!-- 包含尾部文件 -->
        <include file="Public:footer" />
        
        
        
        
        
二、模板渲染
    1、自动开启模板渲染 设置配置文件
            ‘LAYOUT_ON‘=>true,//开启模板渲染
            准备一个模板渲染页面,在页面中使用{__CONTENT__}接受具体模板页面的内容
            如果在摸一个具体模板中不希望使用渲染模板,可以在页首添加{__NOCONTENT__}
    2、不开启自动模板渲染可以在每一个具体页面的页首添加
        前提是,已经有一个主要文件了。
        <layout name=‘layout‘/>
        
        
        
        
        

 

以上是关于ThinkPHP - 模板引擎的主要内容,如果未能解决你的问题,请参考以下文章

thinkphp 多套模板切换怎么做。最好贴几段代码。

thinkphp 怎么替换模板里面的字符

ThinkPHP模版引擎之变量输出具体解释

thinkphp6视图中添加php变量

ThinkPHP学习 --- 25模板引擎和视图渲染 --------------26视图赋值和过滤 ----------------学习

thinkphp模板页面循环输出次数问题