2010-02-12 4 views
0

Smarty 템플릿에서 조건의 대상으로 메서드 호출을 사용하는 방법이 있습니까?Smarty에서 {if}의 대상으로 사용되는 메서드

구체적인 예로는 이고 loggedIn() 인 개체가 있습니다. 나는 사용자가 로그인되어있는 경우 추가 정보를 표시하려면이 방법을 사용하려면

내가 임시 변수에이 방법의 반환 값을 할당하고 {if}의 대상으로 사용할 수 있습니다.

{user->loggedIn assign="loggedIn"} 
{if $loggedIn} 
    // show extra info 
{/if} 

이 중간 단계를 건너 뛸 수있는 방법이 있습니까? 이 같은 것을 원합니다 (작동하지 않습니다) :

{if user->loggedIn} 
    // show extra info 
{/if} 

Smarty의 설명서에서 이와 같은 개체를 사용하는 예는 찾을 수 없습니다.

답변

1

사용 assign_by_ref 대신 register_object :

$smarty->assign_by_ref('user', $user); 

그런 다음에 액세스 할 수 있습니다 방법 :

{if $user->loggedIn()} 
    // show extra info 
{/if} 
+0

을 내가 찾던 정확히 무슨 일이, 감사합니다! –