2014-02-13 3 views
0

그래서 5 개의 항목이 이미있는 연관 배열 {$ join_options}이 하나 있습니다. 나는 $ 옵션에 가입 덤프 경우 smarty가있는 다른 연관 배열로 연관 배열을 만들려면

그것은 표시됩니다 :

19 => Some text for 19 
20 => Some text for 20 
22 => Some text for 22 
24 => Some text for 24 
26 => Some text for 26 

좋은 지금까지.

난 그냥 {$join_options.20}을 사용하는 경우 그리고 그것은 20

에 대한

일부 텍스트를 인쇄 할 것이다 그러나 나는이 작은 가곡 시도 :

{assign var=modified_join_options values=[ 
20 => '$join_options.20', 
24 => '$join_options.24', 
26 => '$join_options.26', 
]} 

을 나는이 오류 얻을 :

syntax error: invalid attribute name: ''$join_options.20',' (Smarty_Compiler.class.php, line 1550) 

$ join_options.20을 입력하는 여러 가지 방법을 시도했습니다. '' 없이 {}와 와트없이?

편집 : 값 대신 값을 사용하여 마지막 쉼표를 제거하고 백틱을 추가하려고했습니다. 지금은 얻을 :

스마티 오류 : [사이트 : 라인 116에 가입] : 구문 오류 : 유효하지 않은 속성 이름 : '='(Smarty_Compiler.class.php, 라인 (1550))

답변

0

, 내가이 전달 된 경우 단지 유식에 대한 함수를 만드는 감아 똑똑한 객체와 배열을 매개 변수로 사용합니다. 플러그인의 함수 내에서 내 조작을 수행 한 다음 foreach 키 값 루프, if 문, strpos() 및 strtolower() 함수를 사용하여 새 배열에 원하는 옵션을 할당하려면 smarty 객체를 사용하십시오. 꽤 표준 PHP 물건. 이것이 똑똑한 표준 절차인지는 모르겠지만 사용중인 소프트웨어에 대한 유용한 설명서를 찾았습니다.이 소프트웨어는 옵션이었습니다.

+0

문제를 직접 해결하지 못했지만 답변으로 표시해야합니까? –

+0

그것이 효과가 있다면 당신의 대답을 받아 들일 것입니다. 대다수의 시간 동안 PHP에서 작업을 수행하는 것이 최선이며, 템플릿 엔진이기 때문에 멋지게 출력됩니다. 또한 smarty 3을 사용했다면 배열을 만드는 더 쉬운 방법이 있습니다. –

0

그것은이이 것 때문에 . 그 안에. 변수를 backticks으로 묶어야합니다. 이 시도.

{assign var=modified_join_options values=[ 
20 => '`$join_options.20`', 
24 => '`$join_options.24`', 
26 => '`$join_options.26`', 
]} 

http://www.smarty.net/docsv2/en/language.syntax.quotes.tpl

+0

현명한 오류 : [in site : join line 116] : 구문 오류 : 잘못된 속성 이름 : '='(Smarty_Compiler.class.php, line 1550) –

+0

현명한 2 또는 3을 사용하고 있습니까? –

+0

smarty 2.yada yada yada –

0

사용 값은 따옴표 마지막 쉼표를 제거하고 작동합니다 : 그래서

{assign var=modified_join_options value=[ 
20 => $join_options.20, 
24 => $join_options.24, 
26 => $join_options.26 
]} 
+0

[사이트 : join line 116] : 구문 오류 : 잘못된 속성 이름 : '='(Smarty_Compiler.class.php, line 1550) –

+0

현명한 v3 또는 2를 사용하고 있습니까? – Borgtex

+0

2.6.26은 똑똑한 버전 –