一点感想

本文主要分析了VTiger程序的页面转向处理,它通过向index.php提交参数转向相应模块。设计参数有module、action等,各模块操作文件包含进来,可引用index.php全局变量。程序定向清晰方便,但PHP灵活性可能使全局变量查找复杂,控制全局变量使用是其特点。

看了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

撰写一篇详细的周报感想需要结合具体的学习内容、技术难点以及个人成长体会,使整体内容具有逻辑性与实用性。以下为基于网络资料整理的写作方法: --- ### 周报感想写作方法 - **语言学习的深入理解** 在中级日语课程中,通过《新编中日交流标准日本语》第8-9课的学习,掌握了复合动词的基本构成方式及使用场景,如「取り出す」「見つめ」等表达在日常生活和职场沟通中的应用。敬语体系的学习增强了对日本商务礼仪的理解,提升了书面语与口语之间的转换能力。 - **技术研修的实际操作体验** C语言的学习过程中,重点掌握了变量类型(int、float、char)、流程控制结构(if-else、for循环)以及函数调用机制。通过编写实际程序,例如计算数组元素之和或实现简单的排序算法,加深了对代码执行流程的理解,并提高了调试技巧。 - **配列(数组)的应用实践** 数组是C语言中最基础的数据结构之一,其索引访问、初始化方式及遍历操作是编程中的核心技能。例如,以下代码展示了如何使用一维数组计算平均值: ```c #include <stdio.h> int main() { int scores[] = {85, 90, 78, 92, 88}; int length = sizeof(scores) / sizeof(scores[0]); int sum = 0; for(int i = 0; i < length; i++) { sum += scores[i]; } float average = (float)sum / length; printf("平均点: %.2f\n", average); return 0; } ``` - **语言与技术的融合提升** 日语学习与编程训练看似领域不同,但都强调逻辑性与结构性思维。日语作文练习“开心的一天”锻炼了语言组织与表达能力,而编程则培养了严谨的问题分析与解决能力。两者相辅相成,有助于在跨领域工作中建立更强的适应力。 -. **反思与展望** 回顾本周学习,发现部分语法点仍需反复巩固,尤其是在复杂句型构造方面。此外,在编程实践中,面对指针与数组的关系时仍有理解盲区,计划在后续阶段加强相关知识的系统梳理,并通过项目实操提升综合能力。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值