2016-12-30 1 views
5

내 PHP 코드에서. {$version_list2} 배열 있는데도 TPL 코드 Smarty에서 param에 값의 배열을 할당하는 방법은 무엇입니까?

$version_config = array( 
    "list" => array(
     "123" 
    ), 
... other params 
) 
$this->getView()->assign('version_config', $version_config); 
$this->getView()->assign('version_list', $version_config['list']); 

,

{assign var="version_list2" value="{$version_config.list}"} 

{$version_list2} 문자열 값 "배열"이다. 어레이에 {$version_list2}을 인코딩하는 데 더 많은 작업이 필요합니까?

+1

('값을 = "..."'),'시도 ['과']'('값 = [...]'). 또한 [배열 섹션 정의] (http://www.smarty.net/docs/en/language.syntax.variables.tpl)를 보면 값 정의를위한 json 표기법에 더 가깝다는 것을 알 수 있습니다. –

+0

귀하의 제안이 효과가 있습니다. 감사. 그러나 []를 추가하면 값이 배열 (array())이되고, 그냥 제거 {}는 괜찮습니다. – ZeroZerg

답변

4

큰 따옴표는 $version_config.list 배열을 "Array" 문자열로 PHP에서 "{$version_config['list']}"으로 변환하고 있습니다.

또한 값에 중괄호가 필요하지 않습니다. 단순히 value 매개 변수에 변수를 전달 대신 따옴표의

{assign var="version_list2" value=$version_config.list} 
관련 문제