您当前的位置: 首页 > 网站编程 > PHP教程 > PHP编程风格规范分享

PHP编程风格规范分享

作者:不详 来源:网络 发布时间: 2014-08-11 21:00 点击:
本规范由 EasyChen 借鉴 SINA网络应用开发部《C++开发规范》和互动技术部《PHP4开发规范》,以及phpDocument规范 整理出的开发规范。我觉得非常不错, 适合PHP的开发,给大家参考,养成一个良好的编程风格是非常有必要的 说明:本规范由 EasyChen 借鉴 SINA网络应用开发

PHP编程风格规范分享

  本规范由 EasyChen 借鉴 SINA网络应用开发部《C++开发规范》和互动技术部《PHP4开发规范》,以及phpDocument规范 整理出的开发规范。我觉得非常不错, 适合PHP的开发,给大家参考,养成一个良好的编程风格是非常有必要的

  说明:本规范由 EasyChen 借鉴 SINA网络应用开发部《C++开发规范》和互动技术部《PHP4开发规范》,以及phpDocument规范 整理出的开发规范。我觉得非常不错, 适合PHP的开发,给大家参考,养成一个良好的编程风格是非常有必要的。

  第1章 命名规范

  1.1变量

  1.1.1全局变量

  全局变量使用$g_开头,如$g_data_list。

  1.1.2 一般变量

  一般的变量使用小写字母命名,单词之间使用下划线分隔。

  变量名字应该使用名词或者形容词+名词的方式。如$value,$new_value。

  1.1.3 临时变量

  不要将在循环中频繁使用的临时变量如$i、$j等用于其它用途。

  1.2 函数

  函数采用小写字母命名,单词之间使用下划线分隔。

  函数的命名建议使用动词+名词的方式,如get_user_img。

  完成一组功能的函数放到一个文件中,存放函数的文件采用function_name.func.php命名。

  1.3 类

  类使用英文的大小写来分隔单词,包括首个单词,所有单词的首字母大写,如PageManager;

  在类中,方法放到属性定义前边、公用方法放到专用方法前边;

  一般情况下,一个类对应到一个文件;

  当一些类关系紧密时,可以存放在一个文件中;

  存放类的文件采用ClassName.class.php方式命名。

  1.4 方法

  方法使用英文的大小写来分隔单词,除首个单词外,其他单词的首字母大写,如getCurrentPage();

  不要采用不常用的缩写,如where2go();

  使用常用的缩写时,只大写首字母,如getHtml()。

  第2章 版式规则

  2.1 语义分隔

  各个函数、方法之间应该采用空行间隔;

  同一个函数中联系紧密的语句之间可以不换行,其他情况需要换行。

  2.2 空格规则

  2.2.1 逻辑运算符前后必须加空格

  正确

  代码如下:$a == $b;

  错误

  代码如下:

  $a==$b;

  $a ==$b;

  正确

  复制代码 代码如下:$a++; $a--;

  错误

  代码如下:$a ++; $a --;

  备注 加一减一运算符不能加空格。

  2.2.2 多个参数分隔时必须加空格

  正确

  代码如下:

  $g_pro , $g_user , g_show;

  get_db_info($host, $user, $passwd);

  错误

  代码如下:

  $g_pro,$g_user,$g_show;

  get_db_info($host,$user,$passwd);

  2.2.3 语法关键字后必须加空格

  例如:If, for , while, switch …..

  正确

  代码如下:for ($i = 0; $i < 10; $i++)

  错误

  代码如下:for($i = 0; $i < 10; $i++ )

  2.3 字符串和变量连接规则

  字符串与变量连接使用'.'号时,必须在'.'前后加空格,使用"号时,必须在变量前后加"{}"。

  正确

  代码如下:

  $my_name = 'file_' . $var1;

  $my_name = "file_{$var1}";

  错误

  代码如下:

  $my_name = "file_'.$var1;

  $my_name = "file_$var1";

  2.4 圆括号规则

  函数名后括号不需要加空格、语法关键字后的括号必须加空格。

  正确

  复制代码 代码如下:for ($i = 0; $i < 10; $i++)

  strlen($my_name);

  错误

  代码如下:for($i = 0; $i < 10; $i++ )

  strlen ($my_name);

  2.5 花括号规则

  花括号必须为上下对应。

  正确

  代码如下:

  if ($a)

  {

  $b = $a;

  }

  错误

  代码如下:

  if ($a){

  $b = $a;

  }

  2.6 数组定义规则

  数组定义和使用时中key值前后必须加单引号。

  PHP 代码:

  正确

  代码如下:

  array( 'name' => '', 'gender' => '' );  

  $user_info['name'];

  错误

  复制代码 代码如下:

  array( name => '', gender => '' );  

  $user_info[name];

  2.7 SQL规则

  在PHP中嵌入的SQL语句关键字全部采用大写;

  表名和字段名要用反引号(`)引起来以防止因为字段名中包含空格而出现错误;

  数据值两边用单引号''包括,并且应确保数据值中的单引号已经转义以防止SQL注入。

  正确

  复制代码 代码如下:$sql = "SELECT `user`.`name` FROM `user` WHERE `id` = '$id' LIMIT 1";

  错误

  复制代码 代码如下:$sql = "select name.user from name where id = $id ";

  第3章 注释规则

  3.1 一般规则

  不写不必要的注释;只有当代码不能很好地说明逻辑时,才用注释补充;

  把注释看成程序的一部分,在编写/维护代码时同时编写/维护注释;

  注释完全采用PHPDocumentor的规范,以方便用其生成API级文档。

  3.2 详细规则

  请参见PHPDocumentor手册。下边给出各个部分的注释示范。

  3.2.1 版权信息

  注释名称 版权信息

  注释示范:

  代码如下:

  //

  // +----------------------------------------------------+

  // | phpDocumentor |

  // +----------------------------------------------------+

  // | Copyright (c) 2000-2003 Joshua Eichorn |

  // | Email jeichorn@phpdoc.org |

  // | Web http://www.phpdoc.org |

  // +----------------------------------------------------+

  // | This source file is subject to PHP License |

  // +----------------------------------------------------+

  //

  备注 使用//来标示版权信息,以免和PHPDocumentor的page-level DocBlock发生冲突

  3.2.2文件头注释示例

  注释名称 文件头注释

  注释示范:

  PHP 代码:

  代码如下:

  /**

  * All abstract representations of inline tags are in this file

  * @package phpDocumentor

  * @subpackage InlineTags

  * @since separate file since version 1.2

  * @version $Id $

  */

  备注

  1)文件头注释需要指明所属的包和子包;

  2)在@version中加上$ID,以方便使用CVS管理文件。

  3.2.3 类注释示例

  注释名称 类注释

  注释示范:

  PHP 代码:

  代码如下:

  /**

  * Use this element to represent an {@}inline tag} like {@}link}

  * @see parserStringWithInlineTags

  * @package phpDocumentor

  * @subpackage InlineTags

  * @author Greg Beaver <cellog@users.sourceforge.net>

  * @since 1.0rc1

  * @version $Revision: 1.21.2.6 $

  * @tutorial inlinetags.pkg

  */

  3.2.4 类属性注释示例

  注释名称 类属性注释

  注释示范:

  PHP 代码:

  代码如下:

  /**

  * Element type

  *

  * Type is used by many functions to skip the hassle of

  *

  * <code>

  * if get_class($blah) == 'parserBlah'

  * </code>

  * always "inlinetag"

  * @var string

  */

  var $type = 'inlinetag';

  3.2.5 函数/类方法注释示例

  注释名称 函数/类方法注释

  注释示范:

  PHP 代码:

  代码如下:

  /**

  * @return string always ''

  * calculate the short description of a DocBlock

  * @see parserStringWithInlineTags::getString()

  * @see parserStringWithInlineTags::trimmedStrlen()

  */

  function getString()

  {

  return '';

  }
分享到:
本文"PHP编程风格规范分享"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4