2010-11-26 16 views
3

5.2.14를 실행 중입니다. <?을 사용하여 PHP 코드를 시작하는 기능이 작동하지 않습니다.<? 및 <? php

가 작동하지 않습니다 :

<? phpinfo(); ?> 

작동 하는가 :이 설정을 변경할 수 있습니다

<?php phpinfo(); ?> 

그렇게 <? 작동합니다 나는 예를 들어 <?php

를 사용해야합니다? 당신이 phpinfo(); 기능을들이받은하여 php.ini 파일의 경로를 볼 수 있습니다 short_open_tag = On

+7

ini를 조작 할 수없는 서버에서 코드를 실행하려면 다음을 수행하십시오. – delnan

+1

짧은 태그를 사용하지 마십시오. – Stephen

+1

@Visitor, 항상' Brad

답변

7

편집이 행해져 Yout의 php.ini 파일 및 설정 ...

하지만, 당신은 단지 스크립트가 <?php

시작으로 쓸 수 있습니다

마이크]]

+0

그러나 이것은 XML 프래그먼트가 맨 위에있는 PHP 스크립트를 만드는 것을 더 어렵게 만듭니다. '''PHP 태그가 있으면''수동으로''echo ''로 출력해야합니다. –

+4

한편, XML 프리앰블은 기본적으로 쓸모가 없습니다. –

2

<?php 대신 짧은 태그 <?을 사용하지 않는 것이 가장 좋습니다. PHP 구성 편집을 지원하지 않는 서버에서 호스트해야하는 경우 짧은 태그를 찾아 표준 태그로 바꾸는 것이 쉽지 않습니다.

http://php.net/manual/en/ini.core.php에서 :

는 PHP의 오픈 태그의 짧은 형식 (<? ?>가) 을 허용할지 여부를 PHP 통지합니다. XML과 의 조합으로 PHP를 사용하려는 경우 인라인을 사용하려면 이 옵션을 비활성화 할 수 있습니다. 그렇지 않으면 PHP로 을 인쇄 할 수 있습니다 (예 : < ?php echo '<?xml version="1.0"?>'; ?>). 또한 이 비활성화 된 경우 PHP 공개 태그 (<?php ?>)의 긴 양식 을 사용해야합니다.

0

그래, mishunika는 나중에 php.ini 파일을 변경한다고 말합니다. 나중에 다른 서버로 이동하면 작동하지 않을 수 있습니다. 당신은 다른 서버의 php.ini 파일에 액세스 할 수없는 경우 당신은

<?php

에 당신이 긴 태그를 사용하지 않으려는 이유를 통해 변경해야?

-1

짧은 태그 사용에 관해서 모두 동의합니다. 호환성을 이유로 짧은 태그를 멀리해야합니다. 그러나 그것을 요구할 수있는 상황이 있습니다. 예를 들어 다른 사용자가 짧은 태그를 사용하여 작성한 PHP 스크립트를 사용하려는 경우 코드를 수정하거나 short_open_tag를 활성화 할 수 있습니다.

php.ini 파일 (공유 호스팅)에 대한 쓰기 권한이 없으면 PHP 기능 "ini_set"을 사용하여 플래그를 설정할 수 있습니다. 당신은 여기에 기능을 읽을 수 있습니다

PHP ini_set

당신이보기 위해서는 ini_set으로 설정할 수없는 플래그 변수가 있습니다. 개인적으로 short_open_tag를 설정하려하지 않았습니다. 한번 해봐.