HDWiki/编码规范

来自站长百科
跳转至: 导航、​ 搜索

HDWiki | HDWiki使用 | HDWiki插件

命名规范[ ]

1、主要的目录 control 里面是控制类 ,前台命名为something.php,则后台对应的是admin_+前台名称,名称应选有意义的英文单词,例如 前台词条 doc.php ,后台词条管理对应的 admin_doc.php

2、model目录下个文件是功能模块,命名以 control名称+".class.php" ,例如control中doc.php对应是 doc.class.php

3、view 是视图类,前台某功能命名为主,如login.htm,space.htm等,若不好命名,以"动词"+"control名称",例如浏览词条可命名为viewdoc.htm,后台命名统一加上admin_前缀,如admin_login.htm 、admin_index.htm等

4、lib目录下为基础类,命名用个类的名称为主,如hddb.class.php 、xml.class.php、json.class.php 等

5、文件名全部小写,类名,类的方法名全部小写。

6、变量名称应使用有意义的小些英文单词或组合命名,中间无任何分隔符,如$doc,$user,$category,$onlineip等等,勿使用拼音或者无意义的$temp,$data等来给变量命名

7、常量全部用大写字母,"HDwiki_有意义的英文单词或组合",如define('HDwiki_VERSION', '1.0.0');

8、一些列表数据采用“名词+list”,如词条列表数据的变量名使用$doclist,用户列表数据的变量使用$userlist等

9、函数或者类的方法命名用小写的英文单词或组合命名,如是组合请用下划线_分割,如 function parse(),function add_doc(),function get_user()等

开发规范[ ]

1、所有的url都是从 index.php? 开始的,第一个参数是调用的控制器,第二个参数是方法名字,第三个以后的都是方法的参数,例如index.php?doc-view-1 表示 调用/control/doc.php的doview方法,1是该方法的参数

2、删除无用的注释,包括无用的函数和方法。

3、if语句格式 :需要用大括号,即使只有一句话,例如if(a) echo 'a'; => if(a) { echo 'a'; }

4、缩进格式,采用TAB方式缩进

5、保证各方法需要有返回值时做有返回值处理,不需要时勿返回值,保证程序异常处理

6、杜绝在for循环中调用本可以一次调用的函数或方法如:

for($i=0,$con=count($order);$i<$con;$i++){
$this->db->query("update ".DB_TABLEPRE."friendlink set displayorder=".$i." where id=".$order[$i]);
}

7、不需要赋值的地方请勿赋值 如

function addlink($link){
$query = $this->db->query("INSERT INTO ".DB_TABLEPRE."friendlink (name,url,description) 
VALUES ('$link[name]','$link[url]','$link[description]')");
}

直接写成如下方式即可:

function addlink($link){
$this->db->query("INSERT INTO ".DB_TABLEPRE."friendlink (name,url,description) 
VALUES ('$link[name]','$link[url]','$link[description]')");
}

8、若中间数据可直接返回,请勿再次赋值如:

function get_pms($id){
$pms=$this->db->fetch_first("SELECT * table");
return $pms;
}

直接改为:

function get_pms($id){
return $this->db->fetch_first("SELECT a. * ,b.username FROM ".DB_TABLEPRE."pms a,".DB_TABLEPRE."
user b where a.toid=b.uid and a.id='".$id."'");
}

9、SQL语句中:sql关键字大写、表名小写。sql语句坚决不用子查询。不用存储过程、不用外键、不用触发器等。记录数,采用 select count(*) from 表名 的方式

10、函数内的局部变量在函数的第一句开始处定义。

11、函数和函数之间空一行。

12、大括号格式

function get_lastdoc($docid,$doctime){;
}

13、写法 if($type=='') 改为 if(''==$type)

参考来源[ ]

http://kaiyuan.hudong.com/

HDWIKI使用手册导航

HDWIKI安装

安装教程

HDWiki使用

前台使用说明 | 用户管理 | 模板管理 | 插件管理 | 数据库管理 | 站内统计 | Map功能 | 基本设置 | 站点设置 | 扩展设置 | 内容设置 | 友情链接及广告管理 | 分类管理 | 词条管理 | 数据调用 | 其他内容管理 | 礼品商店 | 图片及木马扫描 | Apache伪静态 | IIS伪静态 | Nginx伪静态 | 通用样式解读 | 样式使用规则 | 数据库结构说明 | 模板说明 | 函数类参考 |软件包结构 | HDWiki运行机制和原理 |编码规范 |MVC中的控制器 | 框架简介 | 高级应用 | MVC中的视图 | MVC中的模型 | HDWiki与PHPCMS整合 | HDWiki与PHPWind整合 | HDWiki与DEDECMS整合 | HDWiki与UCenter整合 | 可视化编辑使用说明 | 模块区版块制作教程 | 模版共享

HDWiki插件

插件开发指南 | 许愿墙插件开发实例 | 模版与标签 | 宣传中心 | 友情链接申请 | 数据调用 | 互动摸摸