本文主要是对PSR-2 的简单翻译. 英文源址 http://www.php-fig.org/psr/psr-2/

PSR2继承和扩展PSR1--基本编码规范

本手册的目的是使用一系列共同遵守的编码格式规范来减少不同开发者之间的认知冲突.

这些规则从众多项目中总结出来.当工程师们在不同的项目中合作时,这个规则帮助大家建立共识.规则的本身并不是优势,而是遵守规则所带来的理解便利.

关键字"MUST","MUST NOT" "SHOULD" "SHALL" 等参考RFC 2119.

OverView

1 必须遵循PSR1

2 使用4空格缩进,而不是tab

3 禁止每行长度硬限制.软限制每行120字符,实际每行应少于80字符

4 在namespace 声明和 use 声明之后必须有一空行

5 类的声明左花括号必须另起一行,右花括号必须在声明体结束另一一行

6 方法声明的花括号同上

7 所有的属性和方法必须声明可见性, abstract 和 final 必须声明在可见性之前,static 必须声明在可见性之后.  public static || final public || abstract protected

8 控制结构关键字 break ,continue , else 之后必须有一个空格,方法和函数一定不要.

9 else 等控制结构的开始花括号必须在同一行,结束花括号必须另起一行

10 开始的圆括弧之后需要有1个空格,结束的圆括弧之前不需要.

PSR-2 Coding Style Guide的更多相关文章

  1. python coding style guide 的高速落地实践

    python coding style guide 的高速落地实践 机器和人各有所长,如coding style检查这样的可自己主动化的工作理应交给机器去完毕,故发此文帮助你在几分钟内实现coding ...

  2. python coding style guide 的快速落地实践——业内python 编码风格就pep8和谷歌可以认作标准

    python coding style guide 的快速落地实践 机器和人各有所长,如coding style检查这种可自动化的工作理应交给机器去完成,故发此文帮助你在几分钟内实现coding st ...

  3. Google coding Style Guide : Google 编码风格/代码风格 手册/指南

    1 1 1 https://github.com/google/styleguide Google 编码风格/代码风格 手册/指南 Style guides for Google-originated ...

  4. The OpenCV Coding Style Guide

    https://github.com/opencv/opencv/wiki/Coding_Style_Guide

  5. Google C++ Style Guide

    Background C++ is one of the main development languages used by many of Google's open-source project ...

  6. Airbnb JavaScript Style Guide

      Airbnb JavaScript Style Guide() { 用更合理的方式写 JavaScript    ES5 的编码规范请查看版本一,版本二. 翻译自 Airbnb JavaScrip ...

  7. 有限狀態機FSM coding style整理 (SOC) (Verilog)

    AbstractFSM在數位電路中非常重要,藉由FSM,可以讓數位電路也能循序地執行起演算法.本文將詳細討論各種FSM coding style的優缺點,並歸納出推薦的coding style. In ...

  8. [Coding Style] CSS coding style

    CSS coding style Note 结合实际工作中的规范和推荐大家使用的CSS书写规范.顺序这篇文章整合而成 Navigation CSS 书写顺序 CSS 常用文件命名 CSS 常用命名规范 ...

  9. [CPP] Coding Style

    C++ Coding Style C++很多强大的语言特性导致它的复杂,其复杂性会使得代码更容易出现bug.难于阅读和维护. 由于,本人有一点点代码洁癖,所以依照Google的C++编程规范<G ...

随机推荐

  1. POJ 2446 Chessboard

    要求用占两格的长方形铺满平面上除去指定点 二分图匹配 #include <iostream> #include <cstdio> #include <cstring> ...

  2. [Effective Modern C++] Item 2. Understand auto type deduction - 了解auto类型推断

    条款二 了解auto类型推断 基础知识 除了一处例外,auto的类型推断与template一样.存在一个直接的从template类型推断到auto类型推断的映射 三类情况下的推断如下所示: // ca ...

  3. onbeforepaste

    onbeforepaste事件用法 onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').rep ...

  4. ssh username@10.2.1.23无法连接

    ssh username@10.2.1.23无法连接 经过排查各种openSSH版本等,最终因为两个机器不是一个段(A:255.255.0.0 B:255.255.255.0)造成的. 关于IP需要以 ...

  5. Exception和IOException之间的使用区别

    Exception和IOException之间的使用区别 先看一段代码.这段代码来自<深入剖析tomcat>   public void await() { // 创建ServerSock ...

  6. python 调用shell或windows命令

    目前使用到的有两种方式:os.system()和os.popen() import os os.system('cd e:cjx') #调用后返回执行结果状态 如果想获得返回结果,则使用以下方式: i ...

  7. Piggy-Bank (hdoj1114)

    Piggy-Bank Problem Description Before ACM can do anything, a budget must be prepared and the necessa ...

  8. 今天在研究jquery用ajax提交form表单中得数据时,学习到了一种新的提交方式

    今天在研究jquery用ajax提交form表单中得数据时,学习到了一种新的提交方式 jquery中的serialize() 方法 该方法通过序列化表单值,创建 URL 编码文本字符串 序列化的值可在 ...

  9. requirejs--源码分析

    /*---------------------------------------start-------------------------------*/ req({}); // num == 1 ...

  10. Oracle EBS-SQL (OM-5):检查订单事务处理类型.sql

    SELECT            HO.NAME OU                                                                         ...