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.

 

 

 

 

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:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(code)