php编码标准
类:
1.类名用大驼峰命名法,如FooTest,文件名用小写.class.php,如footest.class.php,,大括号独立成行
2.类中方法用小驼峰,如testFunction(),大括号独立成行
3.类中属性
4.类中属性变量用小写,多个单词用_分割
5.暴露给用户的,如控制器类中的方法用小写,便于统一网址风格
6.类中常量用大写,多个单词用_分割
7.类中静态变量小写,且加s_前缀,比较直观
8.需要用abstract,final,必须写在修饰符前面,static写在修饰符后面
9.参数过多,分成多列的时候,每列单独成行
其余
1.运算符前后都需要空格如+,-,*,.,/等,比较运算符==, >=,三元运算符?:
2.if/elif/else/foreach/for/while/do等,右大括号单独成行,左大括号不单独成行,关键词和左大括号之间空一格
3.局部变量用小写,多个单词用_分割
4.函数名用小写,多个单词用_分割
5.false,true,null等所有关键词必须小写
6.方法中的参数每个逗号后面空格,其余不空格
7.左括号前空一格
8.不多加无意义的变量,如 $a = strtolower($b);return $a;直接return strtolower($b);
示例:
<?php /** * Created by PhpStorm. * User: Ant * Version: 1.0 * Date: 2017/5/7 * Time: 16:32 */ define("MALE", 0); define("FAMALE", 1); /** * abstract class */ abstract class Father { abstract public function run(); } /** * test class */ class FooBar extends Father { const ADULT = 1; private $sex; protected $age; /* * contruct * @param int $sex * @param int $age */ public function __construct($sex, $age) { $this->sex = $sex; $this->age = $age; } /* * run */ public function run() { echo $this->age . '|' . $this->sex; } /* * return array */ public function info() { return array($this->sex, $this->age); } /* * set age * @param int $age */ public function setAge($age) { $this->age = $age; } /* * @param string $val */ public static function factory($val) { if ('mysql' === $val) { return new MySql(); } else { return new MySqli(); } } /* * @return boolean */ final public function isAdult() { return $this->age > self::ADULT ? true : false; } public function doCalc() { for ($i=0; $i<10; $i++) { //........... } if ($i < 10) { //........... } elseif ($i<20) { //........... } else { //........... } } } $age = 100; $foo_bar = new FooBar($age, FAMALE); $foo_bar->run(); $foo_bar->setAge(200);