当前位置: 代码迷 >> PHP >> PHP(五)Code Standard
  详细解决方案

PHP(五)Code Standard

热度:122   发布时间:2016-04-28 17:43:25.0
PHP(5)Code Standard

PHP(5)Code Standard

?

?

1. Autoloading Standard

?

Mandatory

?

\<Vendor Name>\(<Namespace>)*<Class Name>

?

?

?

Underscores in Namespaces and Class Names

?

Actually, underscore means another directory for class name.

?

?

?

example

?

\namespace\package\Class_Name => /path/to/project/lib/vendor/namespace/package/Class/Name.php

?

\namespace\package_name\Class_Name => /path/to/project/lib/vendor/namespace/package_name/Class/Name.php

?

?

?

Here is how we load the PHP class.

?

https://gist.github.com/jwage/221634

?

?

?

2. Basic Coding Standard

?

PHP code MUST use only UTF-8 without BOM.

?

?

?

3. Coding Style Guide

?

Code MUST use 4 spaces for indenting, not tabs.

?

?

?

Learn from one colleague, In Sublime, click on the line, we saw “Tab Size” at the bottom.

?

?

?

We can go to [View]>[Indentation]>Convert Indentation to Space and check [Indent Using Space]

?

?

?

There MUST be one blank line after the namespace declaration, and there MUST be one blank line after the block of use declarations.

?

?

?

Opening braces for classes MUST go on the next line, and closing braces MUST go on the next line after the body.

?

?

?

Opening braces for methods MUST go on the next line, and closing braces MUST go on the next line after the body.

?

?

?

Visibility MUST be declared on all properties and methods;

?

?

?

Control structure keywords MUST have one space after them, method and function calls MUST NOT

?

?

?

Opening braces for control structures MUST go on the same line, and closing braces MUST go on the next line after the body.

?

?

?

Opening parentheses for controller structures MUST NOT have a space after them, and closing parentheses for control structures MUST NOT have a space before.

?

?

?

The closing ?> tag MUST be omitted from files containing only PHP.

?

?

?

There MUST NOT be trailing whitespace at the end of non-blank lines.

?

?

?

Blank lines MAY be added to improve readability and to indicate related blocks of code.

?

?

?

PHP keywords and True/False/Null MUST be in lower case. true, false, null.

?

?

?

all use declarations MUST go after the namespace declaration.

?

?

?

Visibility MUST be declared on all properties.

?

?

?

The var keyword MUST NOT be used to declare a property.

?

?

?

There MUST NOT be more than one property declared per statement.

?

?

?

4. Logger Interface

?

?

?

?

?

?

?

References:

?

http://www.php-fig.org/psr/psr-1/

?

http://www.php-fig.org/psr/psr-0/

?

http://www.php-fig.org/psr/psr-2/

?

?

?

?

?

?

?

?

?

?

?

?
  相关解决方案