• 比特币价格刷新纪录高位至11600美元上方 2018-07-23
  • 调查显示:父母学历越高 校外教育参与率越高 2018-07-23
  • 降旗与升旗|18年前这一刻,多少中国人热泪盈眶! 2018-07-23
  • 警方通报北林大女生4死5伤车祸:涉嫌追逐竞驶并超速 2018-07-23
  • 人民日报新知新觉:创造出展现中国魅力的文化产品 2018-07-23
  • 3U娱乐城可信吗 2018-07-22
  • “智能之光”照进津门大地——天津加快建设智能科技产业发展新高地 2018-07-22
  • China party system sets an example 2018-07-22
  • 荔枝跨年“全能女王”刘涛登台献唱(组图) 2018-07-22
  • 安徽省十二届人大代表议案建议全部办结 2018-07-22
  • 清明假期还没过,五一火车票已开售,你抢票了没? 2018-07-21
  • 江城元宵细雨 观灯注意安全 2018-07-21
  • 杠杆资本弃壳退场 汇垠系让渡两公司控股权 2018-07-21
  • 12月12日活动爆料丨剁剁剁剁什么手,这次绝不让你吃土! 2018-07-20
  • 美国创新力排名跌出前十 韩国和瑞典蝉联前两名 2018-07-20
  • ThinkPHP内置模板引擎的使用方法总结

    栏目: 编程语言 发布于: 2014-05-01 11:57:49

    ThinkPHP内置的模板引擎是一个自主创新的XML编译性模板引擎,下面通过一个案例分享一些ThinkPHP内置的模板引擎常用的模板标签的用法,包括变量输出、循环、判断、比较等,这些都是比较基础的用法,无法包括ThinkPHP内置模板引擎的全部标签和特性。

    (1)下面是控制器 IndexAction 类的源码

    <?php
    class IndexAction extends Action{
        public function index() {
            $_SESSION['name']    =    'ThnkPHP Session';
            $vo    =    array('id'=>1,'name'=>'ThinkPHP','email'=>'liu21st@gmail.com');
            $this->assign('vo',$vo);
            $obj    =    (object)$vo;
            $this->assign('obj',$obj);
            $this->assign('array',array(5,260,13,7,40,50,2,1));
            $this->assign('num1',6);
            $this->assign('num2',2);
            $this->assign('num',6);
            $this->display();
        }
    } 
    ?>

    (2)以下演示的是上面控制器赋值到模板中的一些变量,常量以及数组的一些基础性用法

    普遍变量输出

    num1:{$num1}

    对象输出

    id:{$obj:id}

    name:{$obj:name}

    数组输出

    id:{$vo['id']}

    name:{$vo['name']}

    自动判断数组和对象输出

    id:{$vo.id}

    name:{$vo.name}

    系统常量输出(系统常量可以不用在控制器中使用 assign 赋值)

    {$Think.now|date='Y-m-d H:i:s',###}

    {$Think.server.PHP_SELF}

    {$Think.session.name}

    对变量使用函数(这里可以是内置函数或者自定义函数)

    {$vo.name|strtolower|ucwords}

    Foreach 输出

    <foreach name="vo" key="key" item="item">
    {$key}:{$item}
    </foreach>

    下面这个例子使用了循环标签、Switch标签、比较标签

    <volist name="array" id="val" key="i">
    [{$i}]
    <eq name="odd" value="1">偶数行</eq>
    <eq name="odd" value="0">奇数行</eq>
    <gt name="val" value="5">{$val}大于5</gt>
    <if condition=" $val gt 15">
    {$val}大于15
    <elseif condition="$val lt 10" />
    {$val}小于10
    </if>
    <switch name="val">
    <case value="1">数据{$val}</case>
    <case value="2">数据{$val}</case>
    <case value="3">数据{$val}</case>
    <default />其他数据是 {$val}
    </switch>
    </volist>

    输出结果类似为:

    [1] 奇数行 5小于10 长度为1
    [2] 偶数行 260大于5 260大于15 长度为3
    [3] 奇数行 13大于5 长度为2
    [4] 偶数行 7大于5 7小于10 长度为1
    [5] 奇数行 40大于5 40大于15 长度为2
    [6] 偶数行 50大于5 50大于15 长度为2
    [7] 奇数行 2小于10 长度为1
    [8] 偶数行 1小于10 长度为1

    ThinkPHP内置的模板引擎比较标签

    <gt name="num1" value="3">大于3</gt>
    <lt name="num2" value="3">小于3</lt>

    输出结果类似为:

    大于3
    小于3
    条件判断

    <if condition=" $num gt 5">
    {$num}大于5
    <elseif condition="$num gt 3" />
    {$num}大于3<else />
    其他{$num}
    </if>

    输出结果类似为:

    6大于5

    您可能感兴趣的文章

    • thinkphp模板中判断volist循环的最后一条记录
    • Thinkphp 模板中常用的系统变量总结
    • thinkphp页面跳转(successerror)如何设置跳转等待时间
    • ThinkPHP中的查询技巧总结
    • Thinkphp 内部函数 ADSLCFUI 快捷方法全解析
    • thinkphp关闭缓存的方法
    • php统计搜索引擎访问记录
    • thinkphp打印最后一条sql语句
    本站文章除注明转载外,均为本站原创或编译?;队魏涡问降淖?,但请务必注明出处。
    转载请注明:文章转载自 七星彩票平台
    本文标题:ThinkPHP内置模板引擎的使用方法总结
    IT技术书籍推荐:
    疯狂Android讲义(第3版)
    疯狂Android讲义(第3版)
    李刚 (作者)
    移动互联网已经成为当今世界发展最快、市场潜力最大、前景最诱人的业务,而Android则是移动互联网上市场占有率最高的平台。 本书是《疯狂Android讲义》的第3版,本书基于最新的Android 5,并采用了Google推荐的IDE:Android Studio作为开发工具,书中每个案例、每个截图都全面升级到Android 5。本书全面介绍了Android应用开发的相关知识,全书内容覆盖了Android用户界面编程、Android四大组件、Android资源访问、图形/图像处理、事件处理机制、Android输入/输出处理、音频/视频多媒体应用开发、OpenGL与3D应用开发、网络通信编程、Android平台的Web Service、传感器应用开发、GPS应用开发、整合第三方Map服务等。