php编程代码规范学习笔记(适合初学者)(1/2)

命名规范

Θ 类文件都以.class.php为后缀,使用驼峰法命名,并且首字母大写,例如 Pay.class.php;
Θ 类名和目录_文件名一致。例如:类名Zend_Autoloader的目录是Zend/Autoloader.class.php;
Θ 函数的命名使用小写字母和下划线的方式。例如:get_client_ip;
Θ 方法的命名使用驼峰法,首字母小写或者使用下划线”_”,例如listComment(),_getResource(),通常下划线开头的方法属于私有方法;
Θ 属性的命名使用驼峰法,首字母小写或者使用下划线”_”,如$username,$_instance,通常下划线开头的属性属于私有属性;
Θ 常量以大写字母和下划线”_”命名,如”HOME_URL”;

常用名词

1>list名词(单数),如listApple,一看我们就知道读取苹果列表,我们没有必要写成getApples或者listApples或readApples——因为get我们规定一般用于读取单个数据,如getApple.listApples不加s我们也知道是取苹果列表(保证尽量缩短变量命名);
2>get名词(单数);
3>名词Total,表示某个东西的总数。如expenseTotal;
4>found:表示某个值是否已经找到;
5>uccess或ok:一项操作是否成功;
6>done:某个工程是否完成;
7>error:是否有错误发生;
8>result:返回的结果

代码重构

1.函数或者方法体内的代码尽量控制在一个屏幕内。
2.类中不使用的方法随机删除。
3.修改别人的类中方法,要签名。
4.在每个模块内写个readme文件(用于比较复杂业务的说明或代码说明)。
5.尽量让每个类做自己的事,每个函数做一件事。

下面补充一些方法

一、文件格式

1. 对于只含有 php 代码的文件,我们将在文件结尾处忽略掉 "?>" 。这是为了防止多余的空格或者其它字符影响到代码。
例如:

 代码如下 复制代码
<?php
$foo = 'foo';
2. 缩进应该能够反映出代码的逻辑结果,尽量使用四个空格,禁止使用制表符TAB,因为这样能够保证有跨客户端编程器软件的灵活性。
例如:
if (1 == $x) {
    $indented_code = 1;
    if (1 == $new_line) {
        $more_indented_code = 1;
    }
}

3. 变量赋值必须保持相等间距和排列。
例如:

 代码如下 复制代码
$variable = 'demo';
$var      = 'demo2';

4. 每行代码长度应控制在80个字符以内,最长不超过120个字符。因为 linux 读入文件一般以80列为单位,就是说如果一行代码超过80个字符,那么系统将为此付出额外操作指令。这个虽然看起来是小问题,但是对于追求完美的程序员来说也是值得注意并遵守的规范。
5. 每行结尾不允许有多余的空格。

二、命名约定

1. 类文件都是以“.class.php“为后缀,且类文件名只允许字母,使用驼峰法命名,并且首字母大写,例如:DbMysql.class.php 。
2. 配置和函数等其他类库文件之外的文件一般是分别以“.inc.php“和”.php“为后缀,且文件名命名使用小写字母和下划线的方式,多个单词之间以下 划线分隔,例如config.inc.php , common.php,install_function.php 。
3. 确保文件的命名和调用大小写一致,是由于在类Unix系统上面,对大小写是敏感的。
4. 类名和文件名一致(包括上面说的大小写一致),且类名只允许字母,例如 UserAction类的文件命名是UserAction.class.php, InfoModel类的文件名是InfoModel.class.php 。
5. 控制器类以Action为后缀,例如 UserAction、InfoAction ,模型类以Model为后缀,例如UserModel、InfoModel ,其他类也分别以相应分类为后缀,例如Service 、Widget。
6. 方法名只允许由字母组成,下划线是不允许的,首字母要小写,其后每个单词首字母要大写,即所谓的 “驼峰法命名” 规则,且越详细越好,应该能够描述清楚该方法的功能,例如switchModel、findPage。
7. 属性的命名只允许由字母组成,下划线是不允许的,首字母要小写,其后每个单词首字母要大写,即所谓的 “驼峰法命名” 规则,例如tablePrefix、tableName 。
8. 对于对象成员的访问,我们必须始终使用 “get” 和 “set” 方法。例如:

 代码如下 复制代码

class Foo
{
    protected $_testObj;
    public function getTestObj()

    {
        return $this->_testObj;
    }
    public function setTestObj($testObj)
    {
        $this->testObj = $_testObj;
    }
}

首页 1 2 末页

时间: 2024-10-28 10:46:26

php编程代码规范学习笔记(适合初学者)(1/2)的相关文章

【Qt编程】Qt学习笔记&amp;lt;三&amp;gt;

1.      如果程序中使用了png以外格式的图片,在发布程序时就要将Qt安装目录下plugins中的imagineformats文件复制到发布文件中. 2.      在函数声明处快速添加函数定义可单击函数名,按下alt+Enter键后,按下Enter键就可以进入到函数定义部分. 3.      关联槽和信号的两种方法:1.直接在设计器中用鼠标拖拽,适合于设计器中的部件间进行.2.在设计器中右击部件进入转到槽,这种方法是自动关联. 4.      我们在进行编程时,应注意:一个文件.一个类.

ASP中循环语句的学习总结(适合初学者)

初学|循环|语句 循环语句的作用就是重复执行程序代码,循环可分为三类:一类在条件变为"假"之前重复执行语句,一类在条件变为"真"之前重复执行语句,另一类按照指定的次数重复执行语句.在 VBScript 中可使用下列循环语句: Do...Loop: 当(或直到)条件为"真"时循环. While...Wend: 当条件为"真"时循环. For...Next: 指定循环次数,使用计数器重复运行语句. For Each...Next:

《Java并发编程实战》学习笔记 线程安全、共享对象和组合对象

第一章 介绍 线程的优势: 充分利用多处理器 简化模型 简化异步事件的处理 提供用户界面的响应(时间) 线程的风险: 安全的风险(不好的事情会发生),提高错误出现的几率 活性的风险(好的事情不会发生),如某些代码不会执行,出现死锁.活锁以及饥饿 性能的风险,不好的多线程编程可能会危害性能 第二章 线程安全 编写线程安全的代码,实质是管理对状态的访问,尤其是那些共享.可变的状态.对象的状态包括任何能影响它外部可见行为的数据. 当有过个线程能访问状态变量时,而且他们当中能对变量进行修改,则需要对他们

《Java并发编程实战》学习笔记 任务执行和取消关闭

第六章 任务执行 大多数并发应用程序是围绕执行任务进行管理的.设计任务时,要为任务设计一个清晰的任务边界,并配合一个明确的任务执行策略.任务最好是独立的,因为这会提高并发度.大多数服务器应用程序都选择了下面这个自然的任务边界:单个客户请求. 任务时逻辑上的工作单元,线程是使任务异步执行的机制. 应用程序内部的任务调度,存在多种可能的调度策略: 其中,最简单的策略是在单一的线程中顺序的执行任务.但它的吞吐量和响应性很差,一般只在特殊情况下使用:任务的数量很少但生命周期很长时,或者服务器只服务于唯一

《LINUX与UNIX SHELL编程指南》学习笔记

linux下文件的几种类型:目录,符号链接.套接字文件.....要注意,说到的文件类型是一个不一样的概念.linux下文件的类型不是后缀名上进行区别."-"表示该文件是一个普通类型的文件.什么是普通类型文件?你得记住linux下几种类型的文件.不属于那里面列出的,就属于普通类型文件了. chmod 77- 文件名 读 4 写 2 执行 1 专业点的描述:chmod改变权限的方式分为:符号模式(就是使用了用户符号进行表示)和绝对模式(就是"chmod 777 文件名"

javascript常用的代码片段(学习笔记)

获取DOM对象    代码如下 复制代码 function getel(e) {     if (document.getElementById) {         return document.getElementById(e);     } else if (document.all){         return document.all[e];     } } xmlHttp  代码如下 复制代码 //定义方法 获取XMLHttpRequest对象 function ajaxLoa

【Java编程】Java学习笔记&amp;lt;二&amp;gt;

1.    Java中类的域共有4种访问权限,而类的访问控制级别只有public和缺省的,当为public时,可以被任何包的其他类访问,当为缺省时,只能被同一包的其他类访问.如果类自身对另一个类是不可见的,即使类的成员声明为public,也没有一个成员是可见的. 2.    Final变量一旦被显式的赋值(不能默认初始化),就不能再赋值了. 3.    用final修辞的应用变量,不能重新引用另一个变量,但是可以所引用对象的数据. 4.    一个类中,静态方法只能处理静态变量:静态方法只能调用

PHP开发规范手册之PHP代码规范详解_php技巧

涉及多个方面,比如PHP代码规范.PHP文件命名规范.网站开发流程.网站安全与维护等.作为PHP开发规范的开篇,我从一个纯PHP开发者的角度来说说我所认为的PHP代码规范,主要从PHP目录框架结构.PHP代码书写规范.PHP文件命名规范三个角度来阐述,希望对PHP入门学习者有所帮助. 合理建设PHP目录框架结构 我们知道在使用PHP进行网站开发之前,我们需要建设网站的目录结构,网站目录框架结构设计得合理规范,不但有利于网站开发,而且对SEO,网站推广都有好处. 一般最基础的PHP网站结构涉及图片

JavaScript代码规范

原文: Code Conentions for the JavaScript Programming Language 这是一篇JavaScript编程代码规范,它由Sun公司的文档Code Conventions for the Java Programming Language激发而来. 由于JavaScript is not Java,这篇规范和Java规范相比有很大改动. 代码质量在软件质量中占很大比例.在软件生命周期里,一个程序会被许多人接手.如果一个程序可以很好的表达自己的结构和特性