美文网首页
THINKPHP5代码风格规范(基于PSR)

THINKPHP5代码风格规范(基于PSR)

作者: 隐藏的大笨象 | 来源:发表于2017-11-22 11:44 被阅读0次

THINKPHP5代码风格规范(基于PSR)


  • 命名

文件与目录

目录:小写+下划线,例:document_root
类文件:驼峰法(首字母大写),例:DemoConf.php
其它文件:小写+下划线

类、函数、方法、属性、变量、常量、配置参数

类名:驼峰法(首字母大写)与类文件保持一致,例:Class DemoConf
函数:小写+下划线,例:private function get_user_ip
方法:驼峰法,例:function initSession
属性:驼峰法,例:private $privateName = "name"
变量:小写+下划线,例:$user_ip
常量:大写+下划线,例:THINK_PATH
配置参数:小写+下划线 ,例:app_namespace

数据库

表名:小写+下划线,例:table_name
字段:小写+下划线,例:user_config
索引:小写+下划线,例:index_user_time

  • 格式

命名空间(namespace)、引用(use)

namespace、use块后需要空行
use声明都必须在namespace 声明之后

<?php
namespace Vendor\Package;

use FooInterface;
use BarClass as Bar;
use OtherVendor\OtherPackage\BazClass;

class Foo extends Bar implements FooInterface
{
    //body
}
缩进、长度

缩进:4个空格
长度:单行不超过80个字符

花括号{}

花括号:类和方法的花括号必须换行,控制结构的花括号(if|else|foreach|.......)必须在同一行

关键字、真/假/空

if、else、foreach必须小写;true、false、null必须小写

方法参数

参数列表中,每个参数后面必须要有一个空格,而前面一定不能有空格
有默认值的参数,必须放到参数列表的末尾

class Foo extends Bar implements FooInterface
{
    public function sampleFunction($a, &$c, $b = [])
    {
        if ($a === $b) {
            $rtn = true;
        }else {
            $rtn = false;
        }
    }
}
控制结构

控制结构关键字之后必须有一个空格
左括号后面不能有空格
右括号前面不能有空格
结构体必须缩进一次
右括号必须在身体的下一行

if 、 elseif 和 else

<?php
if ($expr1) {
    // if body
} elseif ($expr2) {
    // elseif body
} else {
    // else body;
}

switch 和 case

<?php
switch ($expr) {
    case 0:
        echo 'First case, with a break';
        break;
    case 1:
        echo 'Second case, which falls through';
        // no break
    case 2:
    case 3:
    case 4:
        echo 'Third case, return instead of break';
        return;
    default:
        echo 'Default case';
        break;
}

while 和 do while

<?php
while ($expr) {
    // structure body
}

<?php
do {
    // structure body;
} while ($expr);

for

<?php
for ($i = 0; $i < 10; $i++) {
    // for body
}

foreach

<?php
foreach ($iterable as $key => $value) {
    // foreach body
}

try, catch

<?php
try {
    // try body
} catch (FirstExceptionType $e) {
    // catch body
} catch (OtherExceptionType $e) {
    // catch body
}

相关文章

网友评论

      本文标题:THINKPHP5代码风格规范(基于PSR)

      本文链接:https://www.haomeiwen.com/subject/hrxvvxtx.html