
最近官方开发速度很快,经常刷版本,添加新特性,这个东东是越来越好用了,超赞!这次还增加了T()函数,可以获取模板名,免去自己写的麻烦。
T()函数:
/**
* 获取模版文件 格式 项目://分组@主题/模块/操作
* @param string $name 模版资源地址
* @param string $layer 视图层(目录)名称
* @return string
*/
function T($template='',$layer=''){
if(is_file($template)) {
return $template;
}
// 解析模版资源地址
if(false === strpos($template,'://')){
$template = APP_NAME.'://'.$template;
}
$info = parse_url($template);
$file = $info['host'].(isset($info['path'])?$info['path']:'');
$group = isset($info['user'])?$info['user'].'/':(defined('GROUP_NAME')?GROUP_NAME.'/':'');
$app = $info['scheme'];
$layer = $layer?$layer:C('DEFAULT_V_LAYER');
// 获取当前主题的模版路径
if(($list = C('EXTEND_GROUP_LIST')) && isset($list[$app])){ // 扩展分组
$baseUrl = $list[$app].'/'.$group.$layer.'/';
}elseif(1==C('APP_GROUP_MODE')){ // 独立分组模式
$baseUrl = dirname(BASE_LIB_PATH).'/'.$group.$layer.'/';
}else{
$baseUrl = TMPL_PATH.$group;
}
// 分析模板文件规则
if('' == $file) {
// 如果模板文件名为空 按照默认规则定位
$file = MODULE_NAME . '/' . ACTION_NAME;
}elseif(false === strpos($file, '/')){
$file = MODULE_NAME . '/' . $file;
}
return $baseUrl.$file.C('TMPL_TEMPLATE_SUFFIX');
}
QQ截图20130608214040.png
( 12.5 KB 下载:12 次 )
最佳答案