PHPStorm 이나 IntelliJ 에서 한글 변수명 사용시 "Non-ASCII characters in an identifier" 경고 끄기
개요
이제는 개발 언어와 DBMS, 설정 파일등에서 한글을 제대로 지원하는 경우가 많습니다.
즉 다음과 같이 코딩하는 것이 가능합니다.
학생 클래스
Class 학생 { private $이름; private $학번; public function get학번() { return $this->학번; } }
프로그래밍할 때 변수명이나 함수명 짓는 것은 굉장히 중요하지만 영어는 모국어가 아니라서 늘 어려움이 있는데 한글이 제대로 지원되는 환경이라면 DBMS 와 코드에 바로 한글을 사용하는 것이 좋다고 생각합니다.
예로 "감사보고서 의견내용" 을 저장해야 한다면 다음과 같이 음차(음역;transliteration)한 이름인 'gamsabogoseo_uigyeonnaeyong' 를 변수명으로 사용할 수 있습니다.
PHP의 Transliterator 로 한글을 영어로 음차
transliterator_transliterate('Any-Latin; Latin-ASCII; Lower()', '감사보고서_의견내용');
Class CorpInfo { private $gamsabogoseo_uigyeonnaeyong; }
PHP 에서 음차 기능을 사용하려면 intl extension 이 필요합니다.
음차 방식 변수는 코드의 가독성이 심각하게 떨어지므로 저는 다음과 같이 한글 변수를 바로 사용하고 있습니다.
Class CorpInfo { private $감사보고서_의견내용; }
IDE 설정
한글 변수 사용시 의미를 번역할 필요가 없으므로 코드의 가독성이 매우 좋아지는 장점이 있지만 PHPStorm 이나 IntelliJ 에서 Ascii 가 아닌 문자를 변수나 함수, 클래스 이름으로 사용하면 "Non-ASCII characters in an identifier" 라는 경고를 냅니다.
이럴 경우 아래와 같이 설정을 변경해 주면 경고없이 한글을 사용할 수 있습니다.
- IDE 의 Setting 메뉴로 들어갑니다.
- Editor → Inspection → Internationalization → Non-ASCII characters 를 클릭합니다.
- Warn of 박스에서 Non-ASCII characters in an identifier 체크를 해제합니다.
- 밑에 있는 "Different languages in an identifier" 도 체크를 해제합니다.
- Apply 를 눌러서 저장합니다.
PHP 사용자이고 StyleCI 를 쓴다면 section-no_homoglyph_names 를 검사해 주세요.
같이 보기
- locale(로케일, 로캘) 이란?
- PHP 에서 국제화(i18n) 라이브러리로 문장을 음차(Transliteration)하기 - slug 생성시 유용
- StyleCI 로 PHP 코딩 스타일 교정하기