ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
# 模板替换 [上一页](86.html "上一页")[下一页](88.html "下一页") 在进行模板输出之前,系统还会对渲染的模板结果进行一些模板的特殊字符串替换操作,也就是实现了模板输出的替换和过滤。模板替换适用于所有的模板引擎,包括原生的PHP模板。这个机制可以使得模板文件的定义更加方便,默认的替换规则有: **../Public**: 会被替换成当前项目的公共模板目录 通常是 /项目目录/Tpl/当前主题/Public/ **\_\_TMPL\_\_**: 会替换成项目的模板目录 通常是 /项目目录/Tpl/当前主题/ (注:为了部署安全考虑,../Public和__TMPL__不再建议使用) **\_\_PUBLIC\_\_**:会被替换成当前网站的公共目录 通常是 /Public/ **\_\_ROOT\_\_**: 会替换成当前网站的地址(不含域名) **\_\_APP\_\_**: 会替换成当前项目的URL地址 (不含域名) **\_\_GROUP\_\_**:会替换成当前分组的URL地址 (不含域名) **\_\_URL\_\_**: 会替换成当前模块的URL地址(不含域名) **\_\_ACTION\_\_**:会替换成当前操作的URL地址 (不含域名) **\_\_SELF\_\_**: 会替换成当前的页面URL 注意这些特殊的字符串是严格区别大小写的,并且这些特殊字符串的替换规则是可以更改或者增加的,我们只需要在项目配置文件中配置TMPL_PARSE_STRING就可以完成。如果有相同的数组索引,就会更改系统的默认规则。例如:`'TMPL_PARSE_STRING'  =>array(<br class="calibre5"></br>     '__PUBLIC__' => '/Common', // 更改默认的__PUBLIC__ 替换规则<br class="calibre5"></br>     '__JS__' => '/Public/JS/', // 增加新的JS类库路径替换规则<br class="calibre5"></br>     '__UPLOAD__' => '/Uploads', // 增加新的上传路径替换规则<br class="calibre5"></br>)`有了模板替换规则后,页面上所有的__PUBLIC__ 字符串都会被替换,那如果确实需要输出__PUBLIC__ 字符串到模板呢,我们可以通过增加替换规则的方式,例如:`'TMPL_PARSE_STRING'  =>array(<br class="calibre5"></br>     '--PUBLIC--' => '__PUBLIC__', // 采用新规则输出__PUBLIC__字符串<br class="calibre5"></br>)`这样增加替换规则后,如果我们要输出__PUBLIC__ 字符串,只需要在模板中添加--PUBLIC--,其他替换字符串的输出方式类似。 [上一页](86.html "上一页")[下一页](88.html "下一页")