2011-03-18
그누보드의 query 관련 함수를 살펴보다가

$result = @mysql_query($sql) or die("<p>$sql<p>" . mysql_errno() . " : " .  mysql_error() . "<p>error file : $_SERVER[PHP_SELF]");
라는 구문을 발견했다.

뭔지 찾아보다 보니, 형식 그대로 좌측의 함수를 실패할경우 우측의 함수를 실행 하게 된다는 문장인것으로 밝혀졌다.

한마디로 쿼리를 성공하면 성공하는 거고 실패하면 에러메세지를 출력해 주겠다는 의미인 것이다.

하지만 이 or 라는 녀석은 php 메뉴얼에도 없고.. 뭔가 해서 나름 한참 헤매었다.ㅡ.ㅡ;

추가사항(2011.04.13)
지난 포스팅들을 몇개 넘겨보다가 제목은 or die 인데 or에 대해서만 다루고 있어서 die()에 대해서도 추가한다.
die()는 exit;와 같이 현재 진행중인 스크립트를 즉시 종료 해준다.
하지만 exit; 와는 다르게, 메세지를 출력해준다.

그리고 exit;에 대해서 몇가지 더 말해주자면,
exit;는 함수가 아닌 언어구조기 때문에 가변함수 방식으로 호출이 불가능하며, 반환값이 없다. 참고하길 바란다.