1. 命名规范

API类及文件命名规则

API的类名采用下划线命名法

  • API类名: {$app_name}_api_{$dir_1}/{$dir_n}_{$filename}
  • API存放目录: app/{$app_name}/api/{$dir_1}/{$dir_2}
  • API文件名: {$filename}.php
  • 完整的API文件名: app/{$app_name}/api/{$dir_1}/{$dir_2}/{$filename}.php
  • API所在app: {$app_name}

看起来很晕吧, 来几个例子解脱一下

例1:

API类名: sysitem_api_item_get

API存放目录: app/sysitem/api/item

API文件名: get.php

完整的API文件名: app/sysitem/api/get.php

API所在app: sysitem

业务逻辑库(library)

业务逻辑库的类名采用下划线命名法, 并且只允许小写字母

library有两种命名规则, 一个是系统内置的核心libary库的命名规则(数量有限), 一个是通用的library的命名规则

= 核心library命名规则 = 这一类是系统内置的核心的library, 都放置在base app的lib/static目录下

  • 业务逻辑库类名: {$filename}
  • 业务逻辑库存放目录: app/base/lib/static
  • 业务逻辑库文件名: {$filename}.php
  • 业务逻辑库完整文件名: app/base/lib/static/{$filename}.php
  • 控制器所在app: base

内置的核心library并不多, 罗列一下:

  • app
  • cachemgr
  • lang
  • modifiers
  • service
  • utils

因此可以看到如下用法:

<?php
$app = app::get($app);
<?php
$md5 = utils::array_md5($arr);

= 通用library命名规则 =

  • 业务逻辑库类名: {$appname}{$dir1}/{$dir_n}{$filename}
  • 业务逻辑库存放目录: app/{$app_name}/lib/{$dir_1}/{$dir_2}
  • 业务逻辑库文件名: {$filename}.php
  • 业务逻辑库完整文件名: app/{$app_name}/lib/{$dir_1}/{$dir_2}/{$filename}.php
  • 控制器所在app: {$app_name}

看起来很晕吧, 来几个例子解脱一下

例1:

  • 业务逻辑库类名: base_application_dbtable
  • 业务逻辑库存放目录: app/base/lib/application
  • 业务逻辑库文件名: dbtable.php
  • 业务逻辑库完整文件名: app/base/lib/application/dbtable.php
  • 控制器所在app: base

数据库表,数据库表定义文件及模型命名规则

通常情况下数据库的一个表会对应一个dbschema定义文件(数据库表定义文件)和一个model.

数据库表名采用下划线命名法, 并且只允许小写字母.

  • 表名: {$app_name}_{$filename}
  • 数据库表名前缀: 目前无前缀
  • 文件名: $filename.php
  • 存放目录名: app/{$app_name}/dbschema
  • 完整文件名: app/{$app_name}/dbschema/{$filename}.php
  • 对应的model类名: {$app_name}_mdl_{$filename}
  • 对应的model文件名: app/{$app_name}/model/{str_replace($filename, '_', '/')}.php
  • 所属app: {$app_name}

例1:

  • 表名: syscontent_article
  • 数据库表名前缀: (无)
  • 文件名: syscontent_article.php
  • 存放目录名: app/syscontent/dbschema
  • 完整文件名: app/syscontent/dbschema/syscontent_article.php
  • 对应的model类名: syscontent_mdl_article
  • 对应的model文件名: app/syscontent/model/article.php
  • 所属app: syscontent

例2:

  • 表名: syscontent_article_nodes
  • 数据库表名前缀: (无)
  • 文件名: article_nodes.php
  • 存放目录名: app/syscontent/dbschema
  • 完整文件名: app/syscontent/dbschema/article_nodes.php
  • 对应的model类名: syscontent_mdl_article_nodes
  • 对应的model文件名: app/syscontent/model/aritcle/nodes.php
  • 所属app: syscontent

控制器类及文件命名规则

控制器的类名采用下划线命名法, 并且只允许小写字母

  • 控制器类名: {$app_name}_ctl_{$dir_1}/{$dir_n}_{$filename}
  • 控制器存放目录: app/{$app_name}/controller/{$dir_1}/{$dir_2}
  • 控制器文件名: {$filename}.php
  • 完整的控制器文件名: app/{$app_name}/controller/{$dir_1}/{$dir_2}/{$filename}.php
  • 控制器所在app: {$app_name}

看起来很晕吧, 来几个例子解脱一下

例1:

控制器类名: topc_ctl_member_trade

控制器存放目录: app/topc/controller/member

控制器文件名: brand.php

完整的控制器文件名: app/topc/controller/brand.php

控制器所在app: topc

例2:

控制器类名: syscontent_ctl_admin_article

控制器存放目录: app/syscontent/controller/admin

控制器文件名: article.php

完整的控制器文件名: app/syscontent/controller/admin/article.php

控制器所在app: syscontent

例3:

控制器类名: desktop_ctl_adminpanel

控制器存放目录: app/desktop/controller

控制器文件名: adminpanel.php

完整的控制器文件名: app/desktop/controller/adminpanel.php

控制器所在app: desktop

视图文件命名规则

视图文件命名采用下划线命名法, 并且只允许小写字母

results matching ""

    No results matching ""