질문 Q #14221
CI <?php ?> <? ?> 버전 문제
학학이 2016-07-14 18:11:07

CI 와 php를 공부하면서

<?php 와 <? 의 차이점에 대한 글을 잠깐 본적이 있는거 같은데 기억이 안나서 질문합니다.

 

<?php 와 <? 가 기능은 똑같은 거라고 알고 있는데

php 버전별로 <?를 지원하지 않는 버전이 있나요?

 

php 5.2 버전에서 <?로 된 코드가 5.3에서는 잘 안나오는 것 같은데

<? 문제인거 같아서 질문드립니다.

 

기능 개선중이 코드인데 views/ 에 몇몇 파일에서 <?php와 <?를 혼용해서 쓰고 있네요

 

추가적으로 

로컬 환경 5.3에서 <?php phpinfo(); ?> 하면 정상출력되는데 <? phpinfo(); ?>하면 잘 나오네요  .

서버 환경도 5.3인데 <? phpinfo(); ?> 가 잘 먹히네요 ...

답변 3
#1 배강민 2016-07-14 18:24:22

php.ini 의 숏태그 설정에 따릅니다.

php short_open_tag 으로 구글링하시면 쏟아져나옵니다.

#2 한대승(불의회상) 2016-07-14 18:28:00

<? ?> PHP 숏태그라고 부르는 놈입니다. 

PHP 에서 공식적으로 사용하길 권장 하는 태그는 <?php ?> 입니다.

<? ?> 태그를 사용해도 되지만 과거 일부 웹호스팅에서 지원하지 않는 경우가 있었습니다.

어떤 태그를 써도 상관없지만 저도 <?php ?> 태그를 쓰시라고 권장 하고 싶네요.

#3 학학이 2016-07-15 09:21:07

오호라 감사합니다.

php.ini에서 short_open_tag라는 설정을 On으로 변경하니 잘 나오네요.