PHP var_dump()와 같이 Smarty에서 변수를 디버깅하는 방법
템플릿 안에 변수가 몇 개 있는데 어디에 할당했는지 모르겠습니다.특정 변수 안에 무엇이 있는지 알아야 합니다. 예를 들어 스마트 변수에는member로 시도했다.{debug}하지만 작동하지 않았고 팝업도 표시되지 않았습니다.
스마트 변수를 출력/디버깅하려면 다음과 같은 방법을 사용합니다.var_dump()템플릿 안에 있나요?
사용할 수 있습니다.{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}
@는 배열이 전체 요소에 대해 수식자를 실행하도록 하기 위해 필요합니다.수식자를 실행하지 않으면 각 요소에 대해 실행됩니다.
무슨 일이 있어도 넌 할 수 있어{$varname|@debug_print_var}을 얻다var_dump()- esque 출력(변수를 지정합니다.
.tpl에서 {filename}을(를) 사용하고 소스 코드를 확인합니다.
새로운 Smarty의 특징:
<pre>
{var_dump($variable)}
</pre>
Smarty 세션을 사용해 보십시오.
{$smarty.session|@debug_print_var}
또는
{$smarty.session|@print_r}
출력을 아름답게 하기 위해 다음 중 하나를 사용합니다.<pre> </pre>태그
이것을 시험해 보다세트$debuggingTRUE in Smarty로 이동합니다.
prestashop 1.6.x에서 smarty로 디버깅하려면:
{ddd($variable)} -> debug and die
{ppp($variable)} -> debug only
기타 완전 디버깅태그:
{debug}
더 예쁜 걸 원하신다면 조언해 드리겠습니다.
{"<?php\n\$data =\n"|@cat:{$yourvariable|@var_export:true|@cat:";\n?>"}|@highlight_string:true}
변수를 변수로 바꾸기만 하면 됩니다.
Smarty V3에서는 이 기능을 사용할 수 있습니다.
{var_dump($variable)}
사용하는 것을 선호합니다.<script>console.log({$varname|@json_encode})</script>콘솔에 기록하기 위해 사용합니다.
{$variable|@debug_print_var nofilter}"를 추가할 필요가 없습니다.<pre>태그
{$variable|var_dump}보다 많은 것을 표시(단, 포맷이 나쁘다)하기 때문에debug_print_var개체에 개인 변수가 표시되지 않습니다!
smarty에는 수식어가 내장되어 있습니다.|(단일 파이프라인 연산자).이것처럼.{$varname|@print_r}값을 인쇄합니다.print_r($php_variable)
언급URL : https://stackoverflow.com/questions/2431763/how-to-debug-variables-in-smarty-like-in-php-var-dump
'programing' 카테고리의 다른 글
| javascript에서 포커스를 지우려면 어떻게 해야 하나요? (0) | 2022.11.14 |
|---|---|
| 텍스트 입력 필드에서 Enter 키를 검출합니다. (0) | 2022.11.14 |
| 오류 메시지 "Strict standards:변수만 참조로 전달해야 합니다." (0) | 2022.11.14 |
| yii2에는 고정 연결 옵션이 있습니까? (0) | 2022.11.14 |
| 라라벨이 연애를 주문하다 (0) | 2022.11.14 |