ThinkPHP自定义标签第一天学习结果

浏览:643 发布日期:2016/04/25 分类:技术分享
1,在ThinkPHP\Library\Think\Template\TagLib下,新建我的标签类:Mybq.class.php
比如我想新建两个标签:标签1、标签2:bq1、bq2,就在该类文件输入如下代码:
标签1完全照搬的<php>
标签2是一个自定义js引入标签<?php
namespace Think\Template\TagLib;
use Think\Template\TagLib;
class Mybq extends TagLib{
    // 标签定义
    protected $tags=array(
        /*
         *标签定义:
         *'标签名'=>array('attr'=>'name,id,and so on','level'=>嵌套层次,'alias'=>'标签别名','close'=>是否闭合),
         */
        //标签1
        'bq1'=>array(),
        //标签2
        'bq2'=>array('attr'=>'src'),
        );
    //标签1
    public function _bq1($tag,$content){
        $str = '<?php '.$content.' ?>';
        return $str;
    }
    //标签2
    public function _bq2($tag,$content){
        $src=$tag['src'];
        $str='<script type="text/javascript" src="'.$src.'"></script>';
        return $str;
    }
}
?>
2,配置文件添加如下内容:/*
 *自定义标签配置
 */
//导入标签库,模版中不需要<taglib name="mybq"/>
'TAGLIB_PRE_LOAD'=>'mybq',
//简化标签写法:'<mybq:bq1>'->'<bq1>'
'TAGLIB_BUILD_IN'=>'mybq',
3,在使用标签的html、php页面文件,输入:<bq2 src="__PUBLIC__/Admin/Js/myjs1.js"></bq2>运行结果为:<script src="/mypj/Public/Admin/Js/myjs1.js" type="text/javascript"></script>
最佳答案
评论( 相关
后面还有条评论,点击查看>>