"PHP 짧은 태그 허용하기"의 두 판 사이의 차이

잔글 (봇: 자동으로 텍스트 교체 (-== 참고 자료 == +==참고==))
잔글 (봇: 자동으로 텍스트 교체 (-source +syntaxhighlight))
6번째 줄: 6번째 줄:
: 한편, [[PHP echo 단축 태그]]( <code><?= ... ?></code> )는 [[PHP 짧은 태그]]( <code><? ... ?></code> )와는 다른 것으로 구분되어 여전히 사용 가능함
: 한편, [[PHP echo 단축 태그]]( <code><?= ... ?></code> )는 [[PHP 짧은 태그]]( <code><? ... ?></code> )와는 다른 것으로 구분되어 여전히 사용 가능함
* 짧은 태그 표현( <code><? ... ?></code> )은 다음과 같은 XML 표현과 겹쳐 혼동될 수 있음
* 짧은 태그 표현( <code><? ... ?></code> )은 다음과 같은 XML 표현과 겹쳐 혼동될 수 있음
<source lang='xml'>
<syntaxhighlight lang='xml'>
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
</source>
</syntaxhighlight>
* 그럼에도 불구하고 옛날 소스코드를 실행시켜보기 위한 목적 등으로 필요한 경우가 있을 수 있음
* 그럼에도 불구하고 옛날 소스코드를 실행시켜보기 위한 목적 등으로 필요한 경우가 있을 수 있음
* 짧은 태그를 쓰려면 아래의 방법대로 하면 된다.
* 짧은 태그를 쓰려면 아래의 방법대로 하면 된다.


==php 실행 확인==
==php 실행 확인==
<source lang='console'>
<syntaxhighlight lang='console'>
[root@zetawiki ~]# cat long.php
[root@zetawiki ~]# cat long.php
<?php echo "hello\n"; ?>
<?php echo "hello\n"; ?>
[root@zetawiki ~]# cat short.php
[root@zetawiki ~]# cat short.php
<? echo "hello\n"; ?>
<? echo "hello\n"; ?>
</source>
</syntaxhighlight>
<source lang='console'>
<syntaxhighlight lang='console'>
[root@zetawiki ~]# php long.php
[root@zetawiki ~]# php long.php
hello
hello
[root@zetawiki ~]# php short.php
[root@zetawiki ~]# php short.php
<? echo "hello\n"; ?>
<? echo "hello\n"; ?>
</source>
</syntaxhighlight>
:→ 긴 태그(long.php)는 제대로 작동하지만, 짧은 태그(short.php)는 제대로 작동하지 않는다.
:→ 긴 태그(long.php)는 제대로 작동하지만, 짧은 태그(short.php)는 제대로 작동하지 않는다.


==php.ini 확인/수정==
==php.ini 확인/수정==
<source lang='console'>
<syntaxhighlight lang='console'>
[root@zetawiki ~]# cat /etc/php.ini | grep ^short_open_tag
[root@zetawiki ~]# cat /etc/php.ini | grep ^short_open_tag
short_open_tag = Off
short_open_tag = Off
</source>
</syntaxhighlight>
<source lang='console'>
<syntaxhighlight lang='console'>
[root@zetawiki ~]# cp /etc/php.ini /etc/php.ini.old
[root@zetawiki ~]# cp /etc/php.ini /etc/php.ini.old
[root@zetawiki ~]# sed -i "s/short_open_tag = Off/short_open_tag = On/g" /etc/php.ini
[root@zetawiki ~]# sed -i "s/short_open_tag = Off/short_open_tag = On/g" /etc/php.ini
40번째 줄: 40번째 줄:
---
---
> short_open_tag = On
> short_open_tag = On
</source>
</syntaxhighlight>


==PHP 실행 확인 2==
==PHP 실행 확인 2==
<source lang='console'>
<syntaxhighlight lang='console'>
[root@zetawiki ~]# php long.php
[root@zetawiki ~]# php long.php
hello
hello
[root@zetawiki ~]# php short.php
[root@zetawiki ~]# php short.php
hello
hello
</source>
</syntaxhighlight>
:→ 이제 short.php 도 잘 실행된다.
:→ 이제 short.php 도 잘 실행된다.


==아파치 재시작==
==아파치 재시작==
PHP 설정(php.ini) 변경이 실제 웹에 반영되게 하려면 아파치를 재시작해야 한다.
PHP 설정(php.ini) 변경이 실제 웹에 반영되게 하려면 아파치를 재시작해야 한다.
<source lang='console'>
<syntaxhighlight lang='console'>
[root@zetawiki ~]# service httpd restart
[root@zetawiki ~]# service httpd restart
Stopping httpd:                                            [  OK  ]
Stopping httpd:                                            [  OK  ]
Starting httpd:                                            [  OK  ]
Starting httpd:                                            [  OK  ]
</source>
</syntaxhighlight>


==같이 보기==
==같이 보기==

2020년 11월 2일 (월) 02:35 판

1 개요

PHP short_open_tag 허용
PHP 짧은 태그 허용
PHP 짧은 태그 사용
  • 짧은 태그를 허용하지 않는 것이 PHP 설정 기본값임
한편, PHP echo 단축 태그( <?= ... ?> )는 PHP 짧은 태그( <? ... ?> )와는 다른 것으로 구분되어 여전히 사용 가능함
  • 짧은 태그 표현( <? ... ?> )은 다음과 같은 XML 표현과 겹쳐 혼동될 수 있음
<?xml version="1.0" encoding="UTF-8"?>
  • 그럼에도 불구하고 옛날 소스코드를 실행시켜보기 위한 목적 등으로 필요한 경우가 있을 수 있음
  • 짧은 태그를 쓰려면 아래의 방법대로 하면 된다.

2 php 실행 확인

[root@zetawiki ~]# cat long.php
<?php echo "hello\n"; ?>
[root@zetawiki ~]# cat short.php
<? echo "hello\n"; ?>
[root@zetawiki ~]# php long.php
hello
[root@zetawiki ~]# php short.php
<? echo "hello\n"; ?>
→ 긴 태그(long.php)는 제대로 작동하지만, 짧은 태그(short.php)는 제대로 작동하지 않는다.

3 php.ini 확인/수정

[root@zetawiki ~]# cat /etc/php.ini | grep ^short_open_tag
short_open_tag = Off
[root@zetawiki ~]# cp /etc/php.ini /etc/php.ini.old
[root@zetawiki ~]# sed -i "s/short_open_tag = Off/short_open_tag = On/g" /etc/php.ini
[root@zetawiki ~]# diff /etc/php.ini.old /etc/php.ini
229c229
< short_open_tag = Off
---
> short_open_tag = On

4 PHP 실행 확인 2

[root@zetawiki ~]# php long.php
hello
[root@zetawiki ~]# php short.php
hello
→ 이제 short.php 도 잘 실행된다.

5 아파치 재시작

PHP 설정(php.ini) 변경이 실제 웹에 반영되게 하려면 아파치를 재시작해야 한다.

[root@zetawiki ~]# service httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd:                                            [  OK  ]

6 같이 보기

7 참고

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}