云EC电商模版引擎读取的网址URL及路径原理分析(1)

简介: 云EC电商模版引擎读取的网址URL及路径原理分析(1)

inc/class/template.php,为PHP模版引擎封装的类文件,路径读取和模版配置的信息如下:

function template($file,$tpl_dir="default/", $is_plugin=0) { 
  global $tplrefresh,$exitcon,$ym_tpl; //print $tpl_dir." <br>";
  $tplfile = ($is_plugin==1 ? '' : (".".tpl)).$tpl_dir.$file.'.html';   //print $tplfile.' ';
  //print ' '.$tpl_dir;
  $objfile = tpl_C.($tpl_dir=='admin/'?'': ($is_plugin==1 && strpos($tpl_dir, "./inc/")===0 ? substr($tpl_dir, 6, strlen($tpl_dir)-6):$tpl_dir)); 
  $tmpdir = $tpl_dir;
  $tpl_dir = $is_plugin==1 ? str_replace('./inc/', './cache/', $tpl_dir):$tpl_dir; // print $tplfile.'<br>'.$objfile;
  //print ' '.$tpl_dir;die(' '.$file);
  if($objfile!='' && !file_exists($objfile))
  {
    @mdir($objfile);
  }
  $objfile = $objfile.$file.'.tpl.php'; 
  // print $tplfile.' objfile='.$objfile."  <br>";//die();
  $file1 = $file;
  if($tplrefresh == 1 || ($tplrefresh > 1 && substr(time(), -1) > $tplrefresh)) {
    if(!file_exists($objfile) || @filemtime($tplfile) > @filemtime($objfile)) { 
      parse_template($file,$tmpdir,$file1,$is_plugin); 
    }
  }
  return $objfile;
}


分析如下:

template($file,$tpl_dir="default/", $is_plugin=0)


  • $file,文件名称,直接输入“login”即可,后缀名为.html在函数内部已经配置,无需理会。
  • $tpl_dir=“default/”,模版路径,默认为PC端,由前端js判断读取;
  • $is_plugin,是否是插件。


调用方式:

inc/moudle新建icbc.php文件,内容如下:

if (!defined('in_mx')) {exit('Access Denied');}
@include template("icbc",$ym_tpl."/");
exit();

veiw/default/目录下,建立对应icbc.html

https//www.abc.com/icbc.html访问即可。

除PHP模版直接调用外,还有直接读取缓存cach进行的文件访问,需注意。

相关文章
|
2月前
|
JavaScript 前端开发 小程序
JavaScript获取当前url路径
JavaScript获取当前url路径
|
25天前
|
前端开发 Java 开发者
在Spring框架中,`PathMatcher`是用于进行URL路径匹配的接口
在Spring框架中,`PathMatcher`是用于进行URL路径匹配的接口
42 6
|
2月前
|
iOS开发
iOS App Store 上传项目报错 缺少隐私政策网址 (URL) 解决方法
iOS App Store 上传项目报错 缺少隐私政策网址 (URL) 解决方法
iOS App Store 上传项目报错 缺少隐私政策网址 (URL) 解决方法
|
2月前
|
前端开发
vue-element-admin最新版4.4实现多个url路由匹配到一个路径时,左侧菜单保持高亮状态
vue-element-admin最新版4.4实现多个url路由匹配到一个路径时,左侧菜单保持高亮状态
52 0
|
2月前
用Angular获取当前地址的路径path(也就是网址/#后面那坨url)
用Angular获取当前地址的路径path(也就是网址/#后面那坨url)
|
2月前
|
JavaScript
Vue如何实现hash模式网址(就是那种带#的网址、井号url)
Vue如何实现hash模式网址(就是那种带#的网址、井号url)
|
10月前
|
数据采集 搜索推荐 Java
Java_URL类这是你通往其他网站的唯一路径
Java_URL类这是你通往其他网站的唯一路径
79 0
|
10月前
|
Java 数据安全/隐私保护 Spring
spring boot中获取所有RequestMapping的URL路径列表集
spring boot中获取所有RequestMapping的URL路径列表集
|
12月前
|
PHP
云EC电商模版引擎读取的网址URL及路径原理分析(2)
云EC电商模版引擎读取的网址URL及路径原理分析(2)
76 0
|
13天前
|
JavaScript 前端开发 数据格式
URL编码【详解】——Javascript对URL进行编码解码的三种方式的区别和使用场景,axios请求拦截器中对get请求的参数全部进行URL编码
URL编码【详解】——Javascript对URL进行编码解码的三种方式的区别和使用场景,axios请求拦截器中对get请求的参数全部进行URL编码
15 0