Ecmall一个函数的跟踪
应用中有检查用户名存在的方法
跟踪页面调用到
Member.app.php
中的 check_username()方法
$ms =& ms();
$ms->user->check_username($user_name)
Ms()方法是 global.lib.php文件中的方法 功能是获得相应的功能类
得到在 /includes/passports/default.passport.php
由方法$ms->user 获得类 DefaultPassportUser
调用该类中的方法 check_username()
$model_member =& m('member');
$info = $model_member->get("user_name='{$user_name}'");
可以看到 该方法又从ecmall.php中调用方法m()获得会员的模型类,m()方法同时又将数据库连接db注入模型中
/includes/models/member.model.php
调用Member.model 类中的get方法
由于member.model继承了模型基类 eccore/model/model.base.php 中的BaseModel
则调用父类 BaseModel中的get方法
function get($params)
$data = $this->find($params);
然后调用基类中的find方法获得查询结果