PHP 이용, html 요소 사이에 값 표시하는 방법
CMS/프레임워크 | Rhymix 2.0 |
---|---|
개발 언어 | PHP 7.4 |
라이믹스 중 외부 페이지를 이용해서 기능을 개발하고 있습니다.
초보적인 질문입니다만..
html 요소에 값을 표시하기 위해..
예전에는 다음과 같은 방식을 이용했었습니다.
<?=$변수명?>
그런데 요즘에는 다음과 같이 표시하라고 하더라고요.
<?php echo $변수명; ?>
두 방식 다 상관없습니까?
아니면 두 번째 방법을 추천하십니까?
두 번째 방법을 추천한다면, 그 이유도 말씀해 주시면 좋겠습니다.
고맙습니다~
댓글 3
첫번째의 경우 서버 환경 php.ini 설정에따라 작동이 안될수도 있습니다.
아래의 2가지 문법은 php.ini 설정과 관계없이 항상 지원됩니다.
<?php echo $변수명; ?>
<?=$변수명?>
<?= 문법은 PHP 5.3 이하에서는 php.ini 설정에 영향을 받았지만, PHP 5.4부터는 무조건 지원되므로 부담없이 쓰셔도 됩니다. <?php echo 와 완벽하게 동일한 의미입니다. (마지막에 ;을 넣느냐 빼느냐는 중요하지 않습니다.)
아래와 같은 문법은 설정에 따라 지원 여부가 오락가락하므로, 사용을 권장하지 않습니다.
<? echo $변수명; ?>
<? 함수($변수); ?>
아래와 같은 문법은 PHP가 아니라 ASP입니다. 예전에 PHP가 ASP 사용자들을 끌어모으려고 호환 문법을 제공했던 적이 있어서 여전히 가끔 눈에 띄는데, 당연히 안 됩니다. ㅎㅎ
<%=$변수명%>
지원 여부와는 별도로, 변수명을 어떠한 전처리도 없이 그대로 출력할 때 발생할 수 있는 XSS 취약점 같은 부분은 직접 신경을 써주셔야 합니다. 외부페이지라도 웬만하면 템플릿 문법을 활용해서, 라이믹스가 기본 제공하는 escape 처리 기능 등을 최대한 활용하시기 바랍니다.
정리를 엄청 잘 해주셨네요..