<?php
namespace app\common\taglib;
use think\template\TagLib;
class My extends TagLib{
// 定义标签
protected $tags=array(
'jquery'=>array('attr'=>'','close'=>0)
);
//引入jquery
public function _jquery(){
return '<script src="__PUBLIC__/static/js/jquery-2.0.0.min.js"></script>';
}
}在application\config.php文件添加'taglib_pre_load' => 'app\common\taglib\My'在模板中调用{My:jquery/}结果:if (!empty($tags[0])) {
$regex = $this->getRegex(array_keys($tags[0]), 0);
$content = preg_replace_callback($regex, function ($matches) use (&$tags, &$lib) {
// 对应的标签名
$name = $tags[0][strtolower($matches[1])];
$alias = $lib . $name != $matches[1] ? ($lib ? strstr($matches[1], $lib) : $matches[1]) : '';
// 解析标签属性
$attrs = $this->parseAttr($matches[0], $name, $alias);
$method = 'tag' . $name;
return $this->$method($attrs, '');
}, $content);
}
return;
}
/**
* 按标签生成正则
* @access private
* @param array|string $tags 标签名按照官方手册,网上搜集的资料都是出现以上的错误提示。声明,在TP3.2.3中没有遇到过这种情况
ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。