템플릿 안에 변수가 있는데 어디에 할당했는지 알 수 없습니다. 특정 변수 안에 무엇이 있는지 알아야합니다. 예를 들어 smarty에이라는 변수가 있다고 가정 해보십시오 member
. 시도 {debug}
했지만 작동하지 않았으며 팝업이 표시되지 않았습니다.
var_dump()
템플릿 내부 와 같은 것을 사용하여 smarty 변수를 어떻게 출력 / 디버그 할 수 있습니까?
답변
{php}
태그 를 사용할 수 있습니다
방법 1 (Smarty 3.1 이상에서는 작동하지 않음) :
{php}
$var =
$this->get_template_vars('var');
var_dump($var);
{/php}
방법 2 :
{$var|@print_r}
방법 3 :
{$var|@var_dump}
답변
이것은 작동해야합니다 :
{$var|@print_r}
또는
{$var|@var_dump}
@는 배열이 모든 것에 대해 수정자를 실행하기 위해 필요합니다. 그렇지 않으면 각 요소에 대해 수정자를 수행합니다.
답변
그만한 가치가 있다면 변수에 대해 -esque 출력 {$varname|@debug_print_var}
을 얻을 수 있습니다 var_dump()
.
답변
.tpl에서 {debug}를 사용하고 소스 코드를 확인하십시오.
답변
새로운 Smarty에서는 다음과 같습니다.
<pre>
{var_dump($variable)}
</pre>
답변
Smarty Session을 사용해보십시오.
{$smarty.session|@debug_print_var}
또는
{$smarty.session|@print_r}
출력을 아름답게하려면 <pre> </pre>
태그 사이에 사용하십시오
답변
더 아름다운 것을 원한다면 나는 조언 할 것이다.
{"<?php\n\$data =\n"|@cat:{$yourvariable|@var_export:true|@cat:";\n?>"}|@highlight_string:true}
단지 대체 yourvariable을 당신의 변수
