一、 变量命名
a) 所有字母都使用小写
b) 首字母根据变量值类型指定
i. 整数i
ii. 浮点数f
iii. 字符串s
iv. 布尔值b
v. 数组a
vi. 对象o
vii. 资源r
viii. 混合类型m
c) 使用’_’作为每一个词的分界
例如:
$i_age_max = 10;
$f_price = 22.5;
$s_name =‘harry’;
$b_flag = true;
$a_price = array();
$o_object = new class();
$r_file = fopen();
$m_var = array_combine($a_name, $a_flag); 二、 类命名
a) 使用大写字母作为词的分隔,其他的字母均使用小写,即驼峰格式。
b) 名字的首字母使用大写
c) 不要使用下划线(’_')
d) interface接口最好使用大写字母I,并以Interface结尾
例如:
class NameOneTwo
class Name
interface IExampleInterface () 三、 方法命名
a) 使用大写字母作为词的分隔,其他的字母均使用小写
b) 名字的首字母使用大写,声明为 “private” 或 “protected” 的,使用’_’为前缀
c) 不要使用下划线(’_')
d) (与类命名一致的规则)
e) 对象的访问器总是以 “get” 或 “set” 为前缀,当使用设计模式如 单态模式(singleton)或工厂模式(factory),方法的名字应当包含模式的名字,这样容易从名字识别设计模式。
例如:
class NameOneTwo{
public function DoIt() {};
protect function _HandleError() {};
private function _SayHello() {};
} 四、 类属性命名
a) 属性名前缀应以属性值类型指定(具体参照变量命名规则)
b) 前缀后采用与类命名一致的规则
c) 私有属性采用’_’为前缀
例如:
class NameOneTwo {
public function VarAbc() {};
public function ErrorNumber() {};
public $iAge;
private $_iAge;
} 五、 方法中参数命名
a) 参照类属性命名
例如:
class NameOneTwo {
public function VarAbc($sMsg) {};
} 六、 全局变量
a) 全局变量应该带前缀‘g’
b) 其余参照变量命名规则
例如:
global $gi_Age;
global $ga_Price 七、 定义命名/全局常量
a) 全局常量使用’_’分割每个单词
b) 所有字母使用大写
例如:
define(‘E_ERROR_MISSING_PARA’, 501); 八、 函数
a) 所有的字母采用小写,使用’_’分割每个单词
例如:
function some_bloody_function(){
} 九、 大括号{}规则
a) 将大括号放置关键词下方的同列处或同行,推荐放到同行
例如:
function some_bloody_function() {
}
if (true) {
// code
} 十、 缩进/制表符规则
a) 使用制表符缩进
例如:
function some_bloody_function() {
if (true) {
//code
}
}

转载:http://www.cnblogs.com/omiwa/articles/3455450.html

PHP代码编写规范的更多相关文章

  1. .NET代码编写规范 整理

    .NET代码编写规范 整理 .NET代码编写规范 - [ASP.NET] 2009-02-26 | Tag: 版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明 http://lensp ...

  2. 代码编写规范说明书(c#.net与asp.net)

    代码编写规范说明书(c#.net与asp.net) 目 录1 目的2 范围3 注释规范3.1 概述3.2 自建代码文件注释3.3 模块(类)注释3.4 类属性注释3.5 方法注释3.6 代码间注释4 ...

  3. Python代码编写规范

    Python代码编写规范 编码: a)     如无特殊情况,文件一律使用UTF-8编码 b)     如无需特殊情况,文件头部必须加入#-*-coding:utf-8-*- 缩进 a)     统一 ...

  4. Java学习---Java代码编写规范

    编码规范 1 前言为确保系统源程序可读性,从而增强系统可维护性,java编程人员应具有基本类似的编程风格,兹制定下述Java编程规范,以规范系统Java部分编程.系统继承的其它资源中的源程序也应按此规 ...

  5. PHP|PHP之代码编写规范

    PHP之代码编写规范 一.编辑器设置 1.使用Tab缩进(四个空格),不要直接使用空格 2.文件编码格式 二.命名设置 1.公共库名称空间 2.变量命名 2.1.所有字母都使用小写 2.2.首字母根据 ...

  6. Java代码编写规范(转载)

    编码规范 1 前言为确保系统源程序可读性,从而增强系统可维护性,java编程人员应具有基本类似的编程风格,兹制定下述Java编程规范,以规范系统Java部分编程.系统继承的其它资源中的源程序也应按此规 ...

  7. Java代码编写规范(不是标准规范,自行整理,无须纠结)

    最近回过头来给以前的项目增加功能,发现之前写的注释非常不全,代码也非常的不整洁,有些地方写的''窝七八烂的,看着很不舒服:又恰好经理最近也经常跟我提起代码规范,我们就讨论了一下代码规范的重要性和必要性 ...

  8. php 代码编写规范

    1 编写目的为了更好的提高技术部的工作效率,保证开发的有效性和合理性,并可最大程度的提高程序代码的可读性和可重复利用性,指定此规范.开发团队根据自己的实际情况,可以对本规范进行补充或裁减. 2 整体要 ...

  9. 代码编写规范Asp.Net(c#)

    1        目的 为了统一公司软件开发的设计过程中关于代码编写时的编写规范和具体开发工作时的编程规范,保证代码的一致性,便于交流和维护,特制定此规范. 2        范围 本规范适用于开发组 ...

  10. python 代码编写规范

    一 代码编排1 缩进.4个空格的缩进(编辑器都可以完成此功能),不使用Tap,更不能混合使用Tap和空格.2 每行最大长度79,换行可以使用反斜杠,最好使用圆括号.换行点要在操作符的后边敲回车.3 类 ...

随机推荐

  1. Java连接程序数据源

    在实际应用中,可能需要根据表名动态地改变数据源,比如在程序数据集中,通过传进的表名参数,到数据库取出对应的表作为数据源.例如,FineReport是通过AbstractTableData抽象类来读取数 ...

  2. Android APP 两种用程序拨号的方式

    想在APP中添加一个拨号功能该怎样做呢?Android提供了两种方式,一种是ACTION_CALL方式直接拨打,另一种是ACTION_DIAL方式打开系统的拨号界面. 下面我们来做个小例子 首先需要在 ...

  3. JAVA类的静态加载和动态加载以及NoClassDefFoundError和ClassNotFoundException

    我们都知道Java初始化一个类的时候可以用new 操作符来初始化, 也可通过Class.forName()的方式来得到一个Class类型的实例,然后通过这个Class类型的实例的newInstance ...

  4. 一个页面从输入URL到页面加载显示完成,这个过程都发生了什么?

    对于网址栏的URL不同的操作方式有不同的加载资源.获取数据的方式,下面的详细过程针对"在地址栏输入URL,按enter(回车)键加载资源"此种操作方式做解析,其它的方式的过程大同小 ...

  5. COGS130. [USACO Mar08] 游荡的奶牛[DP]

    130. [USACO Mar08] 游荡的奶牛 ★☆   输入文件:ctravel.in   输出文件:ctravel.out   简单对比时间限制:1 s   内存限制:128 MB 奶牛们在被划 ...

  6. 关于调整input里面的输入光标大小

    input输入框用一个背景图模拟,设置height和line-height一样的高度,使里面的输入文字能够居中, 在FF下出现的情况是:点击input时,输入光标其实上跟input的height一样高 ...

  7. 初试Scala解析XML

    使用Scala解析XML,充分体现了函数式编程的特点,简洁和明了.用Java去解析不是不行,只不过代码不够清晰明了. 首先先把XML文件读入到内存里: val someXml = XML.loadFi ...

  8. CSS3-3D制作案例分析实战

    一.前言 上一节,介绍了基础的CSS3 3D动画原理实现,也举了一个小小的例子来演示,但是有朋友跟我私信说想看看一些关于CSS3 3D的实例,所以在这里为了满足一下大家的需求,同时也为了以后能够更好的 ...

  9. 可变长子网掩码 VLSM

    2014-05-05 17:26:08 标签:IP地址 路由器 技术部 路由表 长子 VLSM的介绍: VLSM(VLSM(Variable Length Subnetwork Mask,可变长子网掩 ...

  10. Java中getResourceAsStream的用法

    首先,Java中的getResourceAsStream有以下几种: 1. Class.getResourceAsStream(String path) : path 不以'/'开头时默认是从此类所在 ...