오래간만에 PHP 로 작업을 하다보니. 별것 아닌것에 헤매는 경우가 좀 있습니다.


요즘 XE  모듈을 하나 만들고 있는데 디버깅하거나 에러 로그같은걸 보는것도 간단치 않네요.



그중에 XE 모듈에서 뷰화면을 위해   some.view.admin.php  파일을 만들을 만들어서 실행시키는 데 아래와 같은 에러가 발생합니다.





페이지에 코딩에러 문제 인가 해서 찾아봤는데도 특별한 문제가 없었는데. 인터넷을 뒤져 보니 DisplayHandler.class.php 에 $this->gz_enabled = false를 해주라는 얘기가 있더군요.  물론 그렇게 해도 에러가 발생하지 않는데 뭔가 이상했습니다.


그래서 좀더 찾아보니  php 작성시 <?php  ...내용... ?>  이렇게 작성할때  ?> 뒤에 빈 공간등이 있으면 그런 문제가 발생한다는 얘기가 있더군요.    그래서 (?>) 뒷부분을 보니 줄바꿈이 있어서 제거를 하니 에러 없이 잘 나왔습니다.


그래서 여기서 이러한 불편한 문제를 위해  php 문법에서는 순수 php 파일인 경우 굳이 ?>로 닫지 않아도 되도록 하고 있었습니다.   ?> 뒤에 문자가 들어가서 뜻 하지 않은 내용이 전송되거나 하는것을 막기위해   ?> 없는경우에는 파일의 끝에 다다르면 자동으로 php 영역의 끝으로 보는거죠.


아래 php 사이트에 있는 기본 문법내용입니다. 제가 빨갛게 테두리 친 부분을 보면 그런 얘깁니다.



http://www.php.net/manual/en/language.basic-syntax.phptags.php




그래서  XECore 소스를 내려 받아 살펴보면 class.php, view.php 파일들에 ?> 로  굳이 닫지 않고 있습니다. 


괜히 열심히 닫다가 에러만 유발 시키는 것보단 확실하죠.



+ Recent posts