hTemplate – 7.3.논리 부정 연산자

논리 부정 연산자 ‘!’

PHP의 논리 연산자 중에는 논리 부정(logical not)을 나타내는 연산자 ‘!’가 있습니다. 논리 부정 연산자는 다음에 오는 수식의 평가가 거짓(false)인 경우에만 참(ture)으로 평가합니다. 이러한 논리 부정 연산자를 템플릿에서도 템플릿 변수를 평가할 때 사용할 수 있습니다. 다음에 오는 템플릿 변수값이 거짓인 경우에만 참으로 평가하게 됩니다.

제 홈페이지에서는 방명록의 템플릿에서 논리 부정 연산자를 사용하였습니다. 아래는 제 방명록을 나타낸 템플릿을 브라우저에서 보여준 것입니다.

< 핍클래스 홈페이지의 방명록 템플릿 >

템플릿을 보면 {r.RE}라는 템플릿 변수가 있습니다. 이 변수의 의미는 답글이 있으면 true, 없으면 false 값을 가집니다. 따라서 답글이 있으면 switch문 {r.RE, ……}에 해당하는 답글 내용이 출력될 것입니다.

또 다른 템플릿 변수 {!r.RE}가 그 위쪽에 있는 것을 볼 수 있습니다. 이것이 논리 부정 연산자로 평가되는 템플릿 변수입니다. 그 의미는 템플릿 변수 {r.RE}의 결과값에 대하여 논리 부정하는 것입니다. 즉, 답글이 있으면 false, 없으면 true값을 가집니다.

따라서 방문자가 방명록에 글을 적게 되면(이 때는 답글이 없는 상태임) 답글 내용은 나타나지 않지만 답글을 달 수 있는 링크용 그림 및 등록된 글을 삭제할 수 있는 링크용 그림이 나타나게 되는 것이지요.

< 방문자가 글을 등록하였을 때 나타나는 모양 >

관리자가 등록된 글에 대하여 답글을 단다면 답글 내용이 나타나겠지만 대신에 링크용 그림은 안보이게 될 것입니다.

< 관리자가 답글을 등록하였을 때 나타나는 모양 >

답글 남기기