整体架构:
UCHOME2.0并不是基于跟Ucenter一样的MVC模式来开发的,而是采用多点入口模式开发的。
什么叫做多点入口呢?就是说整个程序只有固定的几个入口,这几个入口文件作为调度文件,他们就像一个传达室,根据传递不同的参数,他们调用不同的文件来处理你的请求。
Uchome总共有如下入口:
Index.php(主要负责首页数据的显示)
space.php(主要负责数据的显示)
cp.php(主要负责数据的操作,比如发布日志、上传图片等)
network.php(主要负责随便看看功能模块的处理)
magic.php(主要负责道具功能的操作)
do.php(主要负责 登录、注册、找回密码、上传FLASH文件、ajax、验证码、发送邮件等操作)
入口文件的结构:(下面以space.php入口为例)
1:规定允许调用的方法
2:接收传递来的参数,并判断是否为合法的参数调用
3:跟据传递来的参数调用相应的处理文件
这里以space.php?do=doing 为例
传递home参数给space.php之后执行include_once(/source.php/space_doing.php)语句,于是所有事情交给space_doing.php处理
数据显示:
接着上面的来。space_doing.php通过一系列的数据查询操作,从数据库中获取要查询的数据。
然后通过该语句来包含显示模板来显示数据。 先不详细的解说template这个函数而只是说说template函数的功能。
Template()函数功能是通过传递的参数得到编译后的模板文件的完整路径。
在这里得到的是 data/tpl_cache/template_default_cp_doing.php 文件。
而template_default_cp_doing.php是一个PHP代码与html代码混合在一起的文件
Uchome架构图(以space.php?do=doing为例)