본문 바로가기
php

[Visual Studio Code] PHP Class 변수 Getter, Setter 자동생성

by bryan.oh 2022. 4. 9.
반응형

PHP getters and setters for Visual Studio Code

 

 

설치가 되면 아래 3개의 command 가 palette 에 생깁니다.

  • Insert PHP getter.
  • Insert PHP setter.
  • Insert PHP getter and setter.

 

소스코드로 가서 변수에서 우클릭 해보니

이렇게 생겼습니다.

 

클릭해 보니, 아무 동작을 안합니다 -_-ㅋ
Visual Studio Code 재시작 해야됩니다.

 

 

Getter Click 했을 경우
Setter Click 했을 경우

 

저는 function에 생기는 주석을 빼고 싶네요. 많아지면 보기 힘들더라고요.

Getter/Setter 를 생성할 때 저 주석이 안달리게 해보겠습니다.

 

Custom Templates

  • Linux: ~/.config/Code/User/phpGettersSetters
  • OSX: ~/Library/Application Support/Code/User/phpGettersSetters
  • Windows: Users\{User}\AppData\Roaming\Code\User\phpGettersSetters

php는 윈도우에서 사용중이라 윈도우 기준으로 설명하겠습니다.

 위 경로에서 파일을 생성합니다. getter.js, setter.js

getter.js 풀버전
module.exports = (property) => `
	/**
	 * ${property.getterDescription()}
	 *
	 * @return  ${property.getType() ? property.getType() : 'mixed'}
	 */
	public function ${property.getterName()}()
	{
		return $this->${property.getName()};
	}
`

위에서 처럼 나오는 템플릿 입니다. 여기서 주석을 삭제하면 됩니다.

getter.js 주석제거 버전

 

module.exports = (property) => `
	public function ${property.getterName()}()
	{
		return $this->${property.getName()};
	}
`

 

setter.js 풀버전
module.exports = (property) => `
	/**
	 * ${property.setterDescription()}
	 *
	 * @param   ${property.getType() ? property.getType() : 'mixed'}  \$${property.getName()}  ${property.getDescription() ? property.getDescription() : ''}
	 *
	 * @return  self
	 */
	public function ${property.setterName()}(${property.getTypeHint() ? property.getTypeHint() + ' ' : '' }\$${property.getName()})
	{
		$this->${property.getName()} = \$${property.getName()};

		return $this;
	}
`

이것도 주석을 제거 하면 됩니다.

module.exports = (property) => `
	public function ${property.setterName()}(${property.getTypeHint() ? property.getTypeHint() + ' ' : '' }\$${property.getName()})
	{
		$this->${property.getName()} = \$${property.getName()};
		return $this;
	}
`

 

다른 형태로 커스터마이즈 해서 사용해도 됩니다.

 

 

 

728x90
반응형

댓글