20 Mar 2012

Dynamiczne utworzenie nazwy zmiennej

Utworzenie zmiennej

!{assign var=tmp_work value="imp_1_dzien_"|cat:$w_data[ii].work_day|cat:"_pozycja_"|cat:$w_data[ii].work_id}!
!{assign var=check_work value="check_"|cat:$tmp_work}!
!{if $get_data.$check_work}! checked!{/if}!

Wykorzystanie w pętli

!{section name=ii loop=$w_data}!
<tr>
!{assign var=tmp_work value="imp_1_dzien_"|cat:$w_data[ii].work_day|cat:"_pozycja_"|cat:$w_data[ii].work_id}! !{assign var=check_work value="check_"|cat:$tmp_work}! </td>
<td><input type="checkbox" name="check_!{$tmp_work}!" value="1"!{if $get_data.$check_work}! checked!{/if}!/></td> <td><label for="!{$tmp_work_name}!">!{$w_data[ii].work_day}!</span>dzień</strong> !{$w_data[ii].work_date|date_format:"%Y-%m-%d"}!</td>
</tr>
!{/section}!
30 Cze 2010

Przeformatowanie daty za pomoca funkcji str_pad

php:

$tstartdate = '2010-7-1';
$a_tstartdate = explode('-', $tstartdate);
$data_sd['d'] = str_pad($a_tstartdate[2], 2, '0', STR_PAD_LEFT);
$data_sd['m'] = str_pad($a_tstartdate[1], 2, '0', STR_PAD_LEFT);
$data_sd['y'] = $a_tstartdate[0];

smarty:

$smarty-&gt;assign('sd_data', $data_sd);

template:
Data wyjazdu:

<input type="text" value="!{$sd_data.d}!" disabled="disabled" size="2" />
<input type="text" value="!{$sd_data.m}!" disabled="disabled" size="2" />
<input type="text" value="!{$sd_data.y}!" disabled="disabled" size="4" />

wynik:
Data wyjazdu: 01 07 2010