开发规范

    项目目录命全部为小写字母。

    二、数据表命名规则:

    数据库中数据表的命名将全部采用小写字母。

    1、Controller文件的命名采用驼峰命名法则。如:建立index的controller文件,其名字为IndexController.php。

    注:index首字母要大写,后再加上Controller,注意这个Controller也是首字母大写的。之所以加controller是因为便于表明这个文件是controller文件。

    2、Controller文件名字和内容中类的名字相同(字母大小写也一致的相同)。如上面代码所示,IndexController.php的内容类的名字按照此规应为:IndexController。

    3、这里之所以继承Controller是因为Controller 类中有好多常用的类方法。在这里继承下来(extends Controller),是为了便于在接下来的开发中使用这些类方法。

    4、Controller文件内容中的function(类方法),只有用于URL所调用的function其名字后加上Action(注:首字母要大写)。

    如网址: (http://www.doitphp.com/ 为doitphp项目目录的访问网址, 注:关于URL的路由规则此后有详细的讲述)中所调用的controller为IndexController,所调用的action为:helloworldAction。注意的是:这里的helloworld要全部为小写(在方法命名上则不遵守驼峰命名法则。原因:为了和URL保持一致,URL网址通常都是小写字母)。所以这个例子的代码为:

    注:在class IndexController里如果不是用来URL所调用的类方法(function),命名规则就非常随意了,可以后面不加Action(注:不是可以不加Action,是绝不能加!加了程序虽不报错,可规则上不允许。只有被URL调用的类方法才可以加Action,为的是保护这些非URL调用的类方法的代码安全)。非URL调用的类方法访问权限建议不要使用public应该使用protected。

    四、模型(Model)文件的开发规则:

    模型(Model)文件的开发规则类似于控制器(Controller)文件的开发规则。只是把Controller换成Model的区别,读者最好参考上文控制器(Controller)文件的开发规则来理解。

    1、Model文件命名采用驼峰命名法则,较之控制器(Controller)类的命名,模型(Model)类的命名中可以含有大写字母,也无需首字母大写。

    2、Model文件内容类的名字和文件名要一致。

    例:要建一个新Model文件,假设为postList的model文件。文件名字为:postListModel.php内容为:

    3、模型(Model)类方法命名较之于控制器(Controller)类方法命名,无需加行为标签Action,命名规则比较灵活,随心所欲。

    注:模型(Model)文件也可以放在模型目录(models)子目录里,只是不建议使用。其具体规则,可以参照上文控制器(Controller)子目录文件开发规则,自己尝试探索一下。

    挂件(Widget)文件的开发规则也是和上文控制器(Controller)文件的开发规则极为类似,请参考前面所讲述过的控制器(Controller)文件的开发规则。先来个例子,上代码。

    1、挂件(Widget)文件命名建议采用驼峰命名法则,无需首字母大写(没有此类限制)。

    2、挂件(Widget)文件内容类的名字和文件名要一致。

    六、扩展模块(extensions)开发规则

    扩展模块(extensions)作为调用第三方程序来实现某功能,自然不是单独一个文件,是众文件的集合。所以需要在扩展目录中创建子目录。

    下面以一个实例来说明一下具体的开发规则。假设要创建phpmailer的扩展,通过调用phpmailer这个第三方程序来实现邮件的发送。

    1、第一步:在extensions目录中新建子目录:phpmailer。

    2、第二步:在子目录phpmailer中创建扩展引导文件phpmailerExt.php(文件命名规则:在扩展模块名后加Ext)。内容如下:

    通过上面文件内容的代码不难看出,类名称和文件名一致(包括字母大小写),继承父类 Extension。

    3、第三步,将第三方程序代码放置于子目录phpmailer中(具体路径,随你安排)。

    4、第四步,开发扩展引导文件phpmailerExt.php,根据具体的业务需求,添加所需的类方法,总之,通过调用phpmailer这个第三方程序实现发送邮件功能。

    待扩展模块phpmailer开发完毕后如何使用,对此后面文档会详细介绍。

    对于应用目录(application)其子目录library里的类文件开发规则,仅仅只有文件名与类名要相同(包括字母大小写)。因为这样可以实现类文件的自动加载。否则要先进行文件引入,才能调用其代码。