框架概要与特色
- xweibo使用MVC结构,但VC层任务分离不明显,V层也完成部分C层的任务(调用model层获取数据)。
- 没有使用smarty模板类,视图采用组件的形式,可以任意拼装,可以方便模板模块的复用,可以通过后台修改显示细节。
- core文件作为所有调用的入口,使用的所有类,函数,适配器,都是用core提供的函数和类进行调用,便于集中控制。
- 对于sina open API调用有统一错误处理,通过core层提供的数据交互组件,集中对数据进行缓存,过滤,格式化等操作。
框架整体流程图
如图所示
1 请求到达后首先进入预处理模块。
2->3->4 预处理调用控制器层的类中的函数对xweibo全局数据进行设置(如session)。
5->6->7 应用初始化,如模板皮肤,应用安装位置,log位置格式,ip过滤等操作,并调用model层,设置用户的相关信息。
8->9 路由层,将用户请求交给相应的控制器(controller)进行处理。
10->11->12->13 控制器调用open api获取相关数据。
14->15->16->17 控制器缓存相关数据或者获取缓存的相关信息,或者站点数据库内定制的信息(结果显示数量等)。
18 控制器包含相关模板(view)进行显示。