一点感想

看了VTiger这个东东也有几天了(-_-!),由于只需要对软件的部分功能做改进,因此重点针对一个模块进行了阅读,稍微看了一下其它模块,程序的组织结构应该是大同小异的.
做网页相关的东东也不久,呵呵,但是感觉VTiger对网页的转向的处理是比较特殊的,它的所有的页面的转向都是像index.php提交参数,再转向相应模块的.
如下所示:Index.php
----------------------------------------------------------------------------------------------------------------------
if(isset($action) && isset($module))
{
 $currentModuleFile = 'modules/'.$module.'/'.$action.'.php';
 $currentModule = $module;
}
elseif(isset($module))
{
 $currentModule = $module;
 $currentModuleFile = $moduleDefaultFile[$currentModule];
}
else {
        header("Location: index.php?action=$default_action&module=$default_module");
    exit();
}
----------------------------------------------------------------------------------------------------------------------
设计的参数有module,action等
当actoin不为空时,有下面:
----------------------------------------------------------------------------------------------------------------------
 >>>>>>>>>$currentModuleFile ='modules/'.$module.'/'.$action.'.php';<<<<<<<<<<<<
 >>>>>>>>>$currentModule = $module;<<<<<<<<<<<<
----------------------------------------------------------------------------------------------------------------------
当有对模块操作的动作时,利用以上这种方式将需要转向的模块动作文件:
----------------------------------------------------------------------------------------------------------------------
if ($display == "No")
{
 $display == "";
}
else
{
 include($currentModuleFile);
}
----------------------------------------------------------------------------------------------------------------------
由于各个模块操作的文件都是包含进来的,因此由PHP的灵活性,在这些模块里就可以直接引用在index.php里头设置的全局变量了
而当action为index时,则直接转向各个模块的index.php文件
----------------------------------------------------------------------------------------------------------------------
foreach ($moduleList as $mod) {
 $moduleDefaultFile[$mod] = "modules/".$currentModule."/index.php";
}
----------------------------------------------------------------------------------------------------------------------
而一般的modules文件夹中的主module文件都是定义为该module的基类,其中封装该module涉及的变量和操作方法.
由上文,程序定向的时候直接转向相应的PHP文件,因此操作起来思路非常清晰,也非常方便,但是PHP的灵活性在其中也有演变成复杂的趋势,由于全局变量的使用,因此经常要花很大的功夫来查找全局变量的位置,因此控制全局变量的使用也是VTiger的一个特点吧,个人感觉,只有少数必要的变量,如日志,数据库连接等放在了index.php中

明天开始改代码了,感觉php确实是为动态网页所设计的,希望能触类旁通,更深的理解更多开发方面的理念吧V_V

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值