26.09.29
0
조회 195
26.09.26
1
조회 152
26.09.24
0
조회 185
26.09.23
0
조회 189
26.09.19
0
조회 508
26.09.11
0
조회 149
26.09.10
0
조회 149
26.09.10
0
조회 149
26.09.10
0
조회 116
26.09.10
0
조회 101
26.09.09
1
조회 103
26.09.04
0
조회 502
26.09.03
0
조회 340
26.09.01
1
조회 137
26.08.29
0
조회 179
26.08.22
0
조회 293
26.08.20
0
조회 323
26.08.13
0
조회 313
26.08.13
0
조회 366
26.08.13
0
조회 206
댓글 14
근데 템플릿에서 직접 사용하니 안되는데 혹시 템플릿에서는 쌍따옴표로 써야 할까요???
함수 형태냐 변수 형태냐의 차이만 있을 뿐 둘다 같은 값을 출력합니다.
템플릿 파일에서 변수 형태 {$_SERVER['HTTP_USER_AGENT']}를 쓰면 내부 변수로 보고 컴파일시 $__Context->_SERVER['HTTP_USER_AGENT'] 이런 형태로 변환되어 정상적인 값이 출력되지 않습니다.
굳이 템플릿 파일에서 변수 형태를 쓸려면 <?php echo $_SERVER['HTTP_USER_AGENT'] ?> PHP 코드
형태로 쓰면 됩니다.
~
<!--@end-->
이렇게 함수 형태로 쓰거나
<?php if($_SERVER['HTTP_USER_AGENT']){ ?>
~
<?php } ?>
이렇게 PHP 코드 형태로도 쓸 수 있습니다.
정리하자면,
{$_SERVER['HTTP_USER_AGENT']} 이런 형태가 안된다는 거지, 굳이 쓸려면 <?php echo $_SERVER['HTTP_USER_AGENT'] ?> 이렇게 써야 된다는 거구요.
그 이유는 {$_SERVER['HTTP_USER_AGENT']} 이렇게 쓰면 템플릿 엔진에서 무조건 $__Context->_SERVER['HTTP_USER_AGENT']으로 자동 변환하여 안된다는 그런 얘기입니다.
결론은 템플릿 엔진의 버그로 안된다는 그런 얘기입니다.
CONORY님 말씀 듣고보니 이해가 되네요.
템플릿 문법안에 $_SERVER['HTTP_USER_AGENT']를 사용하게되면 문제가 될수 있겠네요.
간단한 예로 스킨파일 안에 아래처럼 변수를 설정했다면
<?php
$a='123';
?>
{@
$a='456';
}
둘은 서로 다른 변수 입니다. php단에서 보면 위쪽은 $a, 아래쪽은 $__Context->a입니다.