함수, 변수 앞에 붙는 @의 용도는 오류 제어 연산자이다.
@(골뱅이, at)을 php 표현식의 앞에 붙이면 그 표현에서 생성되는 모든 오류나 경고 메세지를 무시함.
스크립트 실행을 종료하는 치명적인 오류에 대한 오류 보고도 꺼버리며,
예상하지 못한 오류까지 제어하므로 주의해서 사용
무슨 오류를 왜 제어할건지 분명한 상황에서만 사용
@ 연산자를 사용할 수 있는 표현식 - 변수, 상수, 함수, include 호출 등
함수 정의, 클래스 정의, if와 foreach 같은 조건부 구문 등에는 붙일 수 없음
@test(5);
@$test++;
@include(“test.php”);
// 간단 디버깅
@print($test);
if (isset($test)) print($test); // 위와 같은 동작
실제 서비스되는 소스에서는 사용할 일이 없을 듯 하지만, 테스트 할 때에는 이런 식으로 사용해 볼 순 있을 것 같다.
(어떠한 경우에 사용하면 적절할지 잘 모르겠다... 에러 로그를 남기는게 낫지 않나 하는 생각이 든다.)
if(@error_func($param)){
//
}else {
//
}
'php' 카테고리의 다른 글
[centos] ZipArchive Class 사용을 위한 php-zip 설치 (0) | 2021.12.22 |
---|---|
mac에서 php composer 설치 (0) | 2021.03.14 |
[php] Finding a string contains a specific word - strpos(), stripos() (0) | 2020.02.27 |