+ -
当前位置:首页 → 问答吧 → 求助!有关模板替换增加新常量的问题

求助!有关模板替换增加新常量的问题

时间:2011-08-23

来源:互联网

假设我想在模板页面添加一个名为__M__的替换常量 ,该常量内容为当前模块名称(不是路径)。经测试发现,写在项目应用下CONFIG文件中时,未能读取 MODULE_NAME ,模板替换时原样输出了。将它写在核心文件View.class.php中的templateContentReplace方法下才能替换成功。请问在项目应用下congfig配置文件中,MODULE_NAME 不能读取到么?
config下代码:
TMPL_PARSE_STRING  => array(
      '__M__' =>MODULE_NAME,
) ,
View.class.php下
    protected function templateContentReplace($content) {
        // 系统默认的特殊变量替换
        $replace =  array(
            '../Public'     => APP_PUBLIC_PATH,// 项目公共目录
            '__APP__'       => __APP__,        // 当前项目地址
            '__URL__'       => __URL__,
            .....
            '__M__' =>MODULE_NAME,
        );
   .........

作者: zdarty   发布时间: 2011-08-23

先读取配置文件 后读取的dispatcher 才定义MODULE_NAME的 在配置文件里写肯定没用的,因为这一般写的是定值。如果定了,以后的MODULE_NAME 都为一个值,程序会乱套了。或者你在dispatcher里定义过MODULE_NAME的地方加上define(‘__M__’,MODULE_NAME);

作者: yangweijie   发布时间: 2011-08-24