XE 에서 일반 PHP 구문 사용방법

2012.07.03 21:57

Study4U Views:5058

출처 :  http://www.xpressengine.com/index.php?mid=tip&document_srl=13336987


일반 PHP 구문에서 정의된 변수값을 XE 템플릿에서 사용하는 방법입니다.


<?php
$__Context->aa;
?>

{$aa}


XE 템플릿에서 정의된 변수를 일반 PHP 구문에서 사용하는 방법입니다.

{@ $aa = 1; }

<?php
echo $__Context->aa;
?>



즉, 일반 PHP구문에서는 "$__Context->변수명" 를 사용해서 XE 템플릿에서 정의된 변수를 사용할 수 있습니다.


$_SERVER 나 $_SESSION 과 같은 PHP 함수를 XE 에서 바로 사용하는 방법입니다.


{@

eval(base64_decode('JF9fQ29udGV4dC0+X1NFU1NJT04gPSAmJF9TRVNTSU9OOw==')); //$_SESSION

eval(base64_decode('JF9fQ29udGV4dC0+X1NFUlZFUiA9ICYkX1NFUlZFUjs='));//$_SERVER

}


즉 

base64_decode('JF9fQ29udGV4dC0+X1NFU1NJT04gPSAmJF9TRVNTSU9OOw==') 을 출력해 보면,

$__Context->_SESSION = &$_SESSION; 으로 출력되고


base64_decode('JF9fQ29udGV4dC0+X1NFUlZFUiA9ICYkX1NFUlZFUjs=') 을 출력해 보면

$__Context->_SERVER = &$_SERVER; 으로 출력됩니다.


이 방법을 써야하는 이유중에 하나는 호스팅 서버환경에 따라서 html 페이지에서 "<?php" 를 사용할 수 없는 곳이 있습니다.

그런경우 위의 방법으로 사용할 수 있습니다.


결국은 XE 페이지에서 PHP 구문 사용방법은 "$__Context->변수명" 으로 정의를 하고 "$변수명" 으로 사용하면 됩니다.