thinkPHP5 tablib标签库自定义方法详解

发布时间 - 2026-01-11 01:03:35    点击率:

本文实例讲述了thinkPHP5 tablib标签库自定义方法。分享给大家供大家参考,具体如下:

官方文档的标签库使用教程没有写得太细,自己摸索出来了一些。

先放一段写好的面包碎代码

namespace app\Common\taglib;
use \think\template\TagLib;
class UntilTag extends TagLib
{
  protected $tags = array(
    'breadcrumb' => array('attr' => 'name','close' =>0),
  );
  /**
   * 用法
   * {UntilTag:breadcrumb name='个人中心/修改密码' /}
   * @param $tag
   * @param $content
   * @return string
   * @autor: 潘国兴
   */
  public function tagBreadcrumb($tag, $content)
  {
    $tags = '';
    if(isset($tag['name']) && !empty($tag['name']))
    {
      $tags = explode('/',$tag['name']);
    }
    $parseStr = '<nav class="breadcrumb"><i class="Hui-iconfont"></i> <a class="maincolor" href="{:url(" rel="external nofollow" index")}">首页</a>' ;
    if(!empty($tags))
    {
      foreach($tags as $vo)
      {
        $parseStr .= "<span class='c-666 en'>></span><span class='c-666'>{$vo}</span>";
      }
    }
    $parseStr .= '</nav>';
    return $parseStr;
  }
}

然后设置配置文件

'template'=>[
  'taglib_pre_load'  => 'app\Common\taglib\UntilTag',
],

这个是加载额外的标签库,使用的时候要注意用法,第一,从源代码看,这个一定要用命名空间方式加载,不然会自动加载到thinkphp\template\tablib这个命名空间下面的,第二是在模板上的时候,一定要类名称加tag名

{UntilTag:breadcrumb name='个人中心/修改密码' /}

下面这个配置文件设置用法是另外一种,

'taglib_build_in'  =>  'cx,article'

这种设置是直接简化了标签的使用,在模板的用法如下:

{breadcrumb name='个人中心/修改密码' /}

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。


# thinkPHP5  # tablib  # 标签库  # ThinkPHP分组下自定义标签库实例  # thinkPHP2.1自定义标签库的导入方法详解  # Thinkphp 框架扩展之数据库驱动常用方法小结  # Thinkphp 框架扩展之类库扩展操作详解  # thinkphp框架类库扩展操作示例  # thinkphp5框架实现的自定义扩展类操作示例  # thinkPHP3.2.2框架行为扩展及demo示例  # 老生常谈ThinkPHP中的行为扩展和插件(推荐)  # ThinkPHP框架设计及扩展详解  # ThinkPHP应用模式扩展详解  # Thinkphp 框架扩展之标签库驱动原理与用法分析  # 修改密码  # 配置文件  # 进阶  # 加载  # 是在  # 相关内容  # 感兴趣  # 要注意  # 给大家  # 自定义  # 写得  # 更多关于  # 首页  # 所述  # 写好  # 程序设计  # 源代码  # 操作技巧  # 文档  # 自动加载 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 微信小程序 wx.uploadFile无法上传解决办法  如何在Windows服务器上快速搭建网站?  Laravel如何实现API速率限制?(Rate Limiting教程)  Laravel Artisan命令怎么自定义_创建自己的Laravel命令行工具完全指南  微博html5版本怎么弄发语音微博_语音录制入口及时长限制操作【教程】  Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧  js实现获取鼠标当前的位置  高防服务器租用首荐平台,企业级优惠套餐快速部署  佛山企业网站制作公司有哪些,沟通100网上服务官网?  用yum安装MySQLdb模块的步骤方法  如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?  如何正确下载安装西数主机建站助手?  Laravel怎么配置S3云存储驱动_Laravel集成阿里云OSS或AWS S3存储桶【教程】  如何安全更换建站之星模板并保留数据?  Laravel如何发送邮件_Laravel Mailables构建与发送邮件的简明教程  如何快速搭建FTP站点实现文件共享?  Laravel队列由Redis驱动怎么配置_Laravel Redis队列使用教程  如何撰写建站申请书?关键要点有哪些?  详解Android中Activity的四大启动模式实验简述  Laravel怎么在Blade中安全地输出原始HTML内容  详解Huffman编码算法之Java实现  长沙做网站要多少钱,长沙国安网络怎么样?  中国移动官方网站首页入口 中国移动官网网页登录  实例解析angularjs的filter过滤器  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?  网站制作软件有哪些,制图软件有哪些?  Laravel如何优化应用性能?(缓存和优化命令)  PythonWeb开发入门教程_Flask快速构建Web应用  Laravel如何与Inertia.js和Vue/React构建现代单页应用  Swift中swift中的switch 语句  laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法  Laravel观察者模式如何使用_Laravel Model Observer配置  详解CentOS6.5 安装 MySQL5.1.71的方法  Laravel怎么生成二维码图片_Laravel集成Simple-QrCode扩展包与参数设置【实战】  软银砸40亿美元收购DigitalBridge 强化AI资料中心布局  Laravel数据库迁移怎么用_Laravel Migration管理数据库结构的正确姿势  油猴 教程,油猴搜脚本为什么会网页无法显示?  Laravel如何自定义错误页面(404, 500)?(代码示例)  Laravel怎么实现模型属性的自动加密  CSS3怎么给轮播图加过渡动画_transition加transform实现【技巧】  如何在阿里云部署织梦网站?  如何快速查询网址的建站时间与历史轨迹?  移动端脚本框架Hammer.js  详解阿里云nginx服务器多站点的配置  Laravel如何实现API资源集合?(Resource Collection教程)  linux top下的 minerd 木马清除方法  简历没回改:利用AI润色让你的文字更专业  如何挑选优质建站一级代理提升网站排名?  绝密ChatGPT指令:手把手教你生成HR无法拒绝的求职信  网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?