ThinkPHP 3.2.3 手册中标签库驱动的地址是:
标签库的地址是:
每一个标签库是一个独立的标签库文件,标签库中的每一个标签完成某个功能。
例如:可以通过创建自定义标签进行导航栏(nav)的数据调用。
在创建自定义标签之前可以先参考 ThinkPHP 自身的标签库驱动 ./ThinkPHP/Library/Think/Template/TagLib 下的 Cx.class.php 和 Html.class.php。
首先在 Home 应用下创建 TagLib 目录:./Application/Home/TagLib,在目录中新建 Cate.class.php:
array( 'attr' => 'limit,order', 'close' => 1 //闭合标签 ) ); public function _nav($attr,$content) { $str = <<order("{ $attr['order']}")->limit({ $attr['limit']})->select(); use Admin\Common\Category; //载入递归无限级分类 \$cate = Category::level_layer(\$cate);//多维数组 foreach(\$cate as \$cate_v): extract(\$cate_v);?>str; $str .= $content; $str .= ' '; return $str; }}
自定义标签库 Cate 类定了 nav 标签,包含的属性有 limit 和 order,同时定义该标签为闭合标签,也就是在视图中引用的格式是<nav></nav>,并把查询出数据以字符串的形式返回。
在配置文件 ./Application/Home/Conf/config.php 中添加:
'配置值' //标签库 'TAGLIB_BUILD_IN' => 'Cx,Home\TagLib\Cate', //Cx代表核心标签库 'TAGLIB_PRE_LOAD' => 'Home\TagLib\Cate',);
使得自定义标签库驱动能够自动加载。
最后在需要引入标签库的视图文件 ./Application/Home/View/Common/nav.html 中调用:
参考: