最流行的PHP 代碼規範

「PHP是最好的編程語言」 ;-) 那麼PHPer習慣使用什麼樣的代碼規範呢?sideeffect.kr經過分析GitHub上託管的開源代碼,得出了一些有趣的結果,讓咱們一塊兒來看看吧。php

code convention

縮進

空格(70.172 %),Tab(29.828 %)編程

基於 600,614 次提交統計。segmentfault

定義類時大括號的位置

獨佔一行(55.703 %)編程語言

class Foo
{
  // ...
}

不獨佔一行(44.297 %)ide

class Foo {
  // ...
}

基於 68,516 次提交統計。函數

控制語句大括號的位置

同一行(65.937 %)spa

if($baz) {
  // ..
} elseif($bar) {
  // ..
} else {
  // ..
}

while ($i <= 10) {
  // ..
}

switch($beer) {
  // ..
}

不一樣行 (34.063 %)代碼規範

if($baz)
{
  // ..
}
elseif($bar)
{
  // ..
}
else
{
  // ..
}

while ($i <= 10)
{
  // ..
}

switch($beer)
{
  // ..
}

基於 292,588 次提交統計。code

方法定義大括號的位置

同一行(64.442 %)get

function bar($baz) {
  // ...
}

不一樣行(35.558 %)

function bar($baz)
{
  // ...
}

基於 65,030 次提交統計。

條件語句周圍空格

有空格 (89.979 %)

if ($baz) {
  // ...
} elseif ($bar) {
  // ...
} else {
  // ...
}

while ($i <= 10) {
  // ...
}

switch ($beer) {
  // ...
}

無空格 (10.021 %)

if($baz){
  // ...
}elseif($bar){
  // ...
}else{
  // ...
}

while($i <= 10){
  // ...
}

switch($beer){
  // ...
}

基於 219,583 次提交統計。

條件語句內部空格

無空格(82.808 %)

if ($baz) {
  // ...
} elseif ($bar) {
  // ...
}

while ($i <= 10) {
  // ...
}

switch ($beer) {
  // ...
}

有空格(17.192 %)

if ( $baz ) {
  // ...
} elseif ( $bar ) {
  // ...
}

while ( $i <= 10 ) {
  // ...
}

switch ( $beer ) {
  // ...
}

基於 296,011 次提交統計。

方法聲明參數外部

無空格(82.407 %)

function bar($baz){
  // ...
}

有空格 (17.593 %)

function bar ($baz) {
  // ...
}

基於 15,519 次提交統計

方法聲明參數內部

無空格(84.828 %)

function bar($baz){
  // ...
}

有空格(15.172 %)

function bar( $baz ){
  // ...
}

基於 52,324 次提交統計

類名

PascalCase (75.973 %)

class FooBarBaz {
  // ...
}

Snake_Pascal_Case (14.564 %)

class Foo_Bar_Baz {
  // ...
}

snake_case (6.025 %)

class foo_bar_baz {
  // ...
}

camelCase (2.851 %)

class fooBarBaz {
  // ...
}

Snake_first_letter_uppercase (0.299 %)

class Foo_bar_baz {
  // ...
}

CAPS_SNAKE_CASE (0.287 %)

class FOO_BAR_BAZ {
  // ...
}

基於 60,467 次提交統計。

常量

CAPS_SNAKE_CASE (97.511 %)

const BAR_BAZ = 0;

define('BAR_BAZ', 0);

snake_case (1.088 %)

const bar_baz = 0;

define('bar_baz', 0);

camelCase (0.842 %)

const barBaz = 0;

define('barBaz', 0);

PascalCase (0.507 %)

const BarBaz = 0;

define('BarBaz', 0);

Snake_Pascal_Case (0.052 %)

const Bar_Baz = 0;

define('Bar_Baz', 0);

基於 30,144 次提交統計。

函數名

camelCase (74.26 %)

function barBaz(){
  // ...
}

snake_case (23.644 %)

function bar_baz(){
  // ...
}

PascalCase (1.868 %)

function BarBaz(){
  // ...
}

CAPS_SNAKE_CASE (0.14 %)

function BAR_BAZ(){
  // ...
}

Snake_Pascal_Case (0.087 %)

function Bar_Baz(){
  // ...
}

基於 185,946 次提交統計

方法聲明

static在可見性以後(85.272 %)

class Foo
{
  public static function bar($baz)
  {
    // ...
  }
}

abstract(或final)在可見性以前(7.483 %)

class Foo
{
  abstract public function bar($baz);
  // ...
}

static在可見性以前(5.519 %)

class Foo
{
  static public function bar($baz)
  {
    // ...
  }
}

abstract(或final)在可見性以後(1.726 %)

class Foo
{
  public abstract function bar($baz);
  // ...
}

基於 45,467 次提交統計。

譯註:此處統計歸類不當。應當拆分紅兩類分別統計。

最大行寬

80字符 (90.269 %)

120字符 (7.074 %)

150字符 (2.657 %)

基於 636,577 次提交統計


編譯 SegmentFault

相關文章
相關標籤/搜索