2010-08-08 3 views
0

에 배열 항목과 숫자를 비교 :이것은 내가하고 싶은 것입니다 유식

나는 다음과 같은 항목을 할당 :

$smarty->assign('seats', $aantalStoeltjes); 
$smarty->assign('taken', $bezetArray); 

"좌석"가능한 좌석의 수입니다. 하나의 항목 만있는 배열입니다. 이 경우 숫자 150이지만 동적입니다. "taken"은 이미 찍은 것이므로 표시해서는 안됩니다. 이것은 또한 movietitle, play day와 같은 여러 항목이있는 배열입니다. 촬영 한 좌석은 "seatnumber"에 할당됩니다.

내가 필요한 것은 foo을 150 번 (이 경우)으로 추가하는 것이 좋습니다. 좌석 번호가 촬영 번호와 같으면 foo을 추가해서는 안됩니다.

그래서 요약 해주세요. 이 경우에는 foo을 150 회 추가해야하지만 숫자가 "촬영 된"배열의 좌석 수 중 하나와 같으면 건너 뜁니다.

{section start=1 loop=$seats+1 step=1} 
    {foreach from=$taken item=tolate} 
     {if $smarty.section.seats.index != $tolate.seatnumber} 
     <p>{$tolate.seatnumber}</p> 
     <p>{$smarty.section.seats.index}</p> 
     {/if} 
    {/foreach} 
{/section} 

하지만이 제대로 작동하지 않습니다

이것은 내가 뭘하려합니다. 누구든지 나를 도울 수 있습니까?

+0

미안 난 당신이 필요로하는 무슨 일을 이해할 수 없었다. 그게 무슨 말이야? 귀하의 코드는 귀하가 설명한 것과 완전히 다른 것을 시도하고있는 것처럼 보입니다. 또한'$ seats'가 배열이면'loop = $ seats + 1'은 무엇을 의미합니까? '$ seats'는 항상 하나의 숫자만을 포함합니까? 그런 다음 배열에서 해당 번호를 가져 와서 번호가 1 인 배열에 대한 추가 루프를 추가하는 대신 왜 그 번호를 사용합니까? – serg

답변

0

이 사용한다면 그것은 훨씬 간단 할 것이다 :

{foreach from=$taken item=tolate} 
    {if $tolate.seatnumber != $seats} 
      <p>{$tolate.seatnumber}</p> 
      <p>{$seats}</p> 
    {/if} 
{/foreach} 
관련 문제