-
-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Core framework code style
- Overview
- Files MUST use only
<?phptags. - Files MUST use only UTF-8 without BOM for PHP code.
- Code MUST use tabs for indenting, not spaces.
- Class names MUST be declared in
StudlyCaps. - Class constants MUST be declared in all upper case with underscore separators.
- Method names MUST be declared in
camelCase. - Property names MUST be declared in
camelCase - Property names MUST start with an initial underscore if they are private.
- Indentation uses http://en.wikipedia.org/wiki/Indent_style#Allman_style with single line expressions on next line, without braces.
- Files
PHP code MUST use the long <?php ?> tags; it
MUST NOT use the other tag variations.
PHP code MUST use only UTF-8 without BOM.
- Class Names
Class names MUST be declared in StudlyCaps. Core classes should be prefixed with C. For example, CController, CWidget. Application and extension classes should not use C as prefix. For extensions it's common to use E.
- Class Constants, Properties, and Methods
The term "class" refers to all classes and interfaces here.
Class constants MUST be declared in all upper case with underscore separators. For example:
<?php
class Foo
{
const VERSION = '1.0';
const DATE_APPROVED = '2012-06-01';
}Property names MUST be declared in camelCase.
Property names MUST start with an initial underscore if they are private.
Private properties MUST start with underscore (private $_someProp).
For example:
<?php
class Foo
{
public $publicProp;
protected $protectedProp;
private $_privateProp;
}Method names MUST be declared in camelCase().
@param, @var and @property must declare types as boolean, integer, string, array or null.