>  기사  >  백엔드 개발  >  PHP 코딩 스타일 사양 상세 소개

PHP 코딩 스타일 사양 상세 소개

angryTom
angryTom앞으로
2019-08-09 16:44:323054검색

PHP 코딩 스타일 사양 상세 소개

PHP의 유연성으로 인해 많은 사람들이 코드를 작성할 때 좋은 코드 사양에 주의를 기울이지 않아 이미 유연한 PHP 코드가 지저분해 보입니다. PSR 사양의 PSR-1과 PSR-2는 PHP 코딩에 있어서 몇 가지 사양을 정의해 두었습니다. 이러한 사양을 잘 따르면 유연한 스크립트 언어를 사용해도 매우 아름답고 깔끔한 코드를 작성할 수 있습니다. 먼저 통과된 PSR 사양을 살펴보고, PSR-1 및 PSR-2 사양의 구체적인 요구 사항 중 일부를 간략하게 설명하겠습니다.

PSR 통과

2코딩 스타일 사양# 🎜🎜#중괄호 위치 및 매개변수 목록 등 인코딩 형식 규정3로그 인터페이스 사양 #🎜 🎜#로그 수준 및 로깅 동작에 대한 규정 클래스 및 네임스페이스에 대한 명명 규칙 및 이들과 파일 시스템 간의 매핑 규정#🎜 🎜#데이터 유형, 캐시 항목의 수명주기, 오류 처리 등을 포함한 캐시 관리에 대한 조항7
PSR 번호 #🎜 🎜 ####이름########설명### ## ## ## ## ## ####1################ 코딩 표준 PHP 태그 및 기본 명명 규칙 등 기본 사양 정보
4 자동 로딩 사양
6 캐시 인터페이스 사양
# 🎜🎜#HTTP 메시지 인터페이스 사양 HTTP 요청 및 응답에 대한 규칙

PSR-1 기본 코딩 표준

1. 태그 열기 및 닫기

먼저, PHP 코드는 c3b1990acf38d7fe1044f2d91ffb1a56 태그로 끝나서는 안 되며, 빈 줄로 끝나야 한다고 규정합니다.

2. 네임스페이스 선언 뒤에는 빈 줄이 삽입되어야 하며, use 문 블록 뒤에도 빈 줄이 있어야 합니다.

 같은 코드 줄에 여러 개의 use 문을 만들지 마세요.

3. 수업의 시작과 끝

 클래스 키워드, 클래스 이름, 확장 및 구현 키워드가 같은 줄에 있어야 합니다. 클래스가 여러 인터페이스를 구현하는 경우 인터페이스 이름은 클래스 선언의 같은 줄에 있거나 별도의 줄을 차지할 수 있습니다. 이러한 인터페이스 이름을 여러 줄에 배치하도록 선택한 경우 첫 번째 인터페이스 이름은 자체 줄에 있어야 하며 Implements 키워드 뒤에 오면 안 됩니다. 클래스의 여는 중괄호({)는 함수 선언 뒤의 한 줄에 작성해야 하며, 닫는 중괄호(})도 클래스 본문 뒤의 한 줄에 작성되어야 합니다. 즉, 클래스 선언은 다음과 같습니다.

class EarthGame extends Game implements
    Playable,    
    Savable
{ 
       //类体
}

  클래스 선언과 같은 줄에 클래스 이름을 넣는 것도 가능합니다.

class EarthGame extends Game implements Playble, Savable
{ 
    //类体
 }

4. 속성 선언

 각 속성에는 액세스 수정자(공개, 비공개 또는 보호)가 있어야 합니다. var 키워드를 사용하여 속성을 선언할 수 없습니다. 속성 이름의 사양은 이미 PSR-1에서 다룹니다. 밑줄, 소문자 카멜케이스 이름 지정 또는 대문자 카멜케이스 이름 지정을 사용할 수 있지만 일관성을 유지해야 합니다. (개인적으로 속성에는 소문자 카멜 케이스 사용을 권장합니다)

5. 메소드의 시작과 끝

모든 메소드에는 접근 수정자(public, private 또는 protected)가 있어야 합니다. 액세스 한정자는 abstract 또는 final 뒤, static 앞에 와야 합니다. 기본값이 있는 메소드 매개변수는 매개변수 목록의 마지막에 배치되어야 합니다.

 ●한 줄 선언
  메서드의 여는 중괄호({)는 메서드 이름 뒤 한 줄에 써야 하고, 닫는 중괄호(})도 메서드 본문 뒤 한 줄에 써야 합니다(직접 메소드 코드를 따릅니다). 메소드 매개변수 목록은 공백으로 시작하거나 끝나서는 안 됩니다. 즉, 매개변수 목록은 괄호 뒤에 와야 합니다. 각 매개변수에 대해 매개변수 이름(또는 기본값) 뒤에는 쉼표가 있어야 하고, 쉼표 뒤에는 공백이 있어야 합니다. 아래와 같이 복잡하게 들릴 수 있습니다.

final public static function generateTile(int $diamondCount, bool $polluted = false)
{
   //方法体
}

 ●여러 줄 선언
  메서드에 매개 변수가 많으면 한 줄 메서드 선언은 실용적이지 않습니다. 이 시점에서 각 매개변수(유형, 매개변수 변수, 기본값 및 쉼표 포함)가 별도의 들여쓰기 줄에 있도록 매개변수 목록을 분할할 수 있습니다. 이 경우, 닫는 괄호는 매개변수 목록 다음 줄에 위치해야 하며 메서드 선언의 시작 부분에 맞춰 정렬되어야 합니다. 여는 중괄호({)는 같은 줄에서 닫는 괄호 다음에 공백으로 구분되어야 합니다. 메소드 본문은 새 줄에서 시작해야 합니다. 다시 말하지만, 이는 복잡하게 들릴 수 있지만 다음 예는 이 규칙을 이해하는 데 도움이 될 것입니다.

public function __construct(
    int $size,
    string $name,
    bool $warparound = false,
    bool $aliens = false
) {
  //方法体
 }

6. 줄과 들여쓰기

 코드는 탭 대신 공백 4개를 사용하여 들여쓰기해야 합니다. 편집기 설정을 확인하고 탭 키를 눌렀을 때 탭 대신 공백 4개를 사용하도록 설정할 수 있습니다. 각 코드 줄은 120자를 초과할 수 없습니다.

7. 메소드 및 함수 호출

 메서드 이름과 여는 괄호 사이에는 공백이 있어서는 안 됩니다. 메서드 호출의 매개변수 목록 규칙은 메서드 선언의 매개변수 목록 규칙과 동일합니다. 즉, 한 줄 호출의 경우 여는 괄호 뒤나 닫는 괄호 앞에는 공백이 있어서는 안 됩니다. 각 매개변수 뒤에는 쉼표가 와야 하며 다음 매개변수 앞에는 공백이 있어야 합니다. 메서드 호출에 여러 줄의 코드가 필요한 경우 각 매개 변수는 한 줄에 들여쓰기되어야 하며 닫는 괄호는 한 줄에 있어야 합니다.

$earthGanme = new EarthGame( 
     5,  
     'earth',
      true,
      true
 );
$earthGame::generateTile(5, true);

8. 프로세스 제어

  프로세스 제어 키워드(if, for, while 등) 뒤에는 공백이 와야 합니다. 그러나 여는 괄호 뒤에는 공백이 있을 수 없습니다. 마찬가지로 닫는 괄호 앞에는 공백이 있어서는 안 됩니다. 따라서 내용은 괄호 안에 꼭 맞아야 합니다. 클래스 및 (한 줄) 함수 선언과 달리 흐름 제어 코드의 여는 중괄호는 닫는 괄호와 같은 줄에 있어야 합니다. 닫는 중괄호는 한 줄에 있어야 합니다. 다음은 간단한 예입니다.

$title = [];
for ($x = 0; $x < $diamondCount; $x++) { 
   if ($polluted) {
        $title[] = new PollutionDecorator(new DiamondDecorator(new Plains()));
    } else {
        $title[] = new DiamondDecorator(new Plains());
    }
}

위 내용은 PHP 코딩 스타일 사양 상세 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 cnblogs.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제