[搜]

贴心猫-文档

分析概述

  • 需求分析:
    • 假如每个模板后面,想增加一段js代码,来执行访问统计,计划任务 或 检测输出动态的js标签等;除了每个模板手动增加一段代码以外,有没有更简洁的办法?
    • 假如某一个功能组,如后台,会员中心,需要统一检测权限;或一些复杂的场景,要自定义一些php扩展方法;这又怎么实现?
    • 模板 扩展类库 就针对如上场景 而设计的 一组扩展类库;
  • 概述:
    • 针对每一个功能组,都可有自己的 模板 扩展类库;
    • 模板 扩展类库 与 控制器 放在同一目录;即在模板目录下的:/_ctrls/下;
    • 命名空间 与 控制器 相同;类名以 tex(template-extend缩写)开头;
    • 多个模板通用的 类库文件名为 texBase.php,在这一组模板中,会自动加载;
    • 其它扩展类库 可按模型一个类库文件;需要手动加载;

扩展模板类库

  • texBase.php 公用类库
    • init($obj) 方法名固定,输出每个模板前执行;
    • pend() 方法名固定,输出每个模板后,附加到模板尾部的代码;
    • 其它方法,可自定义;调用方式如:\imcat\demo\texBase::myfunc(1,2),
    • 或者用助手函数:tex('texBase')->myfunc(1,2);
  • texDemo.php 自定义扩展类库,可自定义类名
    • 调用 \imcat\demo\texDemo::ufunc(3,4);
    • 推荐 用助手函数:tex('texDemo')->ufunc(3,4);
  • Demo代码效果