云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进行的文件访问,需注意。

相关文章
|
6月前
|
JavaScript 前端开发 小程序
JavaScript获取当前url路径
JavaScript获取当前url路径
|
12天前
|
JavaScript 前端开发 索引
JavaScript获取url网址中域名后面的部分
如何截取 url 中网站域名之后的部分,需要用到以下几个方法:
62 3
|
1月前
url重写重定向所有http网址到https网址
url重写重定向所有http网址到https网址
31 4
|
3月前
|
前端开发 API
【API管理 APIM】APIM中如何配置使用URL路径的方式传递参数(如由test.htm?name=xxx 变为test\xxx)
【API管理 APIM】APIM中如何配置使用URL路径的方式传递参数(如由test.htm?name=xxx 变为test\xxx)
|
5月前
|
前端开发 Java 开发者
在Spring框架中,`PathMatcher`是用于进行URL路径匹配的接口
在Spring框架中,`PathMatcher`是用于进行URL路径匹配的接口
135 6
|
6月前
|
iOS开发
iOS App Store 上传项目报错 缺少隐私政策网址 (URL) 解决方法
iOS App Store 上传项目报错 缺少隐私政策网址 (URL) 解决方法
iOS App Store 上传项目报错 缺少隐私政策网址 (URL) 解决方法
|
6月前
用Angular获取当前地址的路径path(也就是网址/#后面那坨url)
用Angular获取当前地址的路径path(也就是网址/#后面那坨url)
|
6月前
|
前端开发
vue-element-admin最新版4.4实现多个url路由匹配到一个路径时,左侧菜单保持高亮状态
vue-element-admin最新版4.4实现多个url路由匹配到一个路径时,左侧菜单保持高亮状态
108 0
|
6月前
|
JavaScript
Vue如何实现hash模式网址(就是那种带#的网址、井号url)
Vue如何实现hash模式网址(就是那种带#的网址、井号url)
|
2月前
|
前端开发 JavaScript
前端JS截取url上的参数
文章介绍了两种前端JS获取URL参数的方法:手动截取封装和使用URLSearchParams。
46 0