ecmall解读记录

1:cache_server缓存对象,在ecmall/includes/global.lib.php声明, 用于记录 数据库的缓存用到的。

2:conf 配置项类,直接以conf::get获取配置项的值,配置项的全局变量$GLOBALS['ECMALL_CONFIG'],全局变量值通过Conf::load载入配置文件。

     来说说配置文件里面值这么载入进来的:

    比如在ecapp.base.php文件有这样两行代码:

      /* 载入配置项 */
            $setting =& af('settings');
            Conf::load($setting->getAll());

       af是定义在global.lib.php里面,看这个函数里面的代码就应该知道,包括了两个文件

         includes/arrayfile.base.php以及 includes/arrayfiles/' . $type . '.arrayfile.php ,这个$type在这里就是setting了,也就是arrayfiles/setting.arrayfile.php,这两个文件里面的类是父子关系。

      子类的get_default函数 就是具体的 变量值。父类的getAll就是用来取这些变量的值。

    最后通过conf::load把这些变量值放入全局变量中,也就是 $GLOBALS['ECMALL_CONFIG'] = $conf;这个。

  



3:upload同级的integrate文件只在链接UC才用到。


4:前端基类frontend.base.php和后端基类backend.base.php


5:eccore文件夹,ecmall的核心文件所在。包括controller,model,view以及一个核心文件ecmall.php。来说说显示视图的流程:

          app.base.php下面的display函数 =>_init_view函数   $this->_view =& v(); 这行代码,$v是view文件下template.php模板类。跟踪到模板类的display函数,

          $out = $this->fetch($filename, $cache_id);这行代码即是输出模板,看fetch函数里面filename变量这么获取的,在前端基类frontend.base.php$this->_view->template_dir = ROOT_PATH . "/themes/store/{$template_name}";里面。

      

代码写的有点玄乎,最挫的是提交的表单数据 都没有经过过滤

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值