я получаю дату с: {$smarty.now|date_format:'%Y-%m-%d %H:%M:%S'}
Но как становятся 20-дневными после?
Если теперь: 2010 05 05 12:12:12
, Я хочу показать 2010 25 05 12:12:12
Используйте функцию php strtotime ()
и присвойте свою переменную smarty. Примерно так:
<?php
$later = strtotime('+20 day');
$smarty->assign('later', $later);
?>
Тогда в шаблоне:
{ $later|date_format:'%Y-%m-%d %H:%M:%S'}
{$smarty.now}
- это простая временная метка (количество секунд с 1970 года). Поэтому вы можете просто добавить к ней столько секунд, сколько вам нужно:
{$smarty.now+20*24*60*60|date_format:'%Y-%m-%d %H:%M:%S'} //+20 days
Это работает в Smarty3, если нет в более старых версиях, то вам может понадобиться выполнить вычисления с помощью директив {assign}
и/или {math}
.