Thinkphp模板的使用

本文介绍ThinkPHP中模板标签的使用方法,包括内置标签如include和import等,以及如何自定义标签库来实现复杂的功能。通过示例展示了自定义标签库的具体实现过程。

模板标签

  1. 内置标签:include,import,volist,foreach,for,switch,compare,present,empty,defined,if/else
  2. 输出php代码:PHP标签
  3. 原样输出:literal标签<literal></literal>标签是避免解析

标签库

  1. 使用taglib标签<taglib name="Views\TagLib\Jike"/><Jike:friends name="jike_user" uid="2"></Jike:friends>
  2. 标签库的加载:taglib标签,标签预加载配置(TAGLIB_PRE_LOAD)'TAGLIB_PRE_LOAD'=>'Views\TagLib\Jike' <Jike:friends name="jike_user" uid="2"></Jike:friends>
  3. 配置内置标签库:'TAGLIB_BUILD_IN'=>'Views\TagLib\Jike'  <friends name="jike_user" uid="2"></friends>

如何自定义标签库:

打开 Thinkphp/Library/Think/Template/TagLib/Cx.class.php

在网站的应用目录下创建一个标签的类文件

<?php
namespace Views\TagLib;
use Think\Template\TagLib;
class Jike extends TagLib
{
    //定义标签列表
    protected $tags=array(
        'friends'=>array(
        'attr'=>'uid',
        'close'=>1
        )
    );
    public function _friends($tag,$content)
    {
        $id=$tag['uid'];
        $name=$tag['name'];
        $empty=$tag['empty'];
        $unique=rand();
        $parse_string='<?php';
        $parse_string='$_FRIENDS_'$unique'=get_user_friends('$id');';
        $parse_string='if(empty($_FRIENDS_'$unique')){echo $empty;}';
        $parse_string='else';
        $parse_string='{';
        $parse_string='foreach($_FRIENDS_'$unique' as $key=>$'$name'){';
        $parse_string='?>';
        $parse_string=$content;
        $parse_string='<?php';
        $parse_string='}';
        $parse_string='}';
        $parse_string='?>';
        return $parse_string;
    }
}

 

转载于:https://www.cnblogs.com/cczhao/p/5212126.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值