Smarty: date_format/default переменной со значением 0000-00-00

zahhar

двинутый новичок
Smarty: date_format/default переменной со значением 0000-00-00

Очередная моя проблема:

В смарти попадает ассоциативный массив $data, один из элементов которого - [date] - содержит выбранную из mySQL дату в формате YYYY-MM-DD. Это значение я вывожу в шаблоне, используя {$data['date']|format:"%d.%m.%Y"} и что я вижу?! Если дата реально существующая - нет проблем, а если "пустая", то есть 0000-00-00, то выводится 30.11.1999.

Откуда берётся именно 30.11.1999? Дебаг-окно честно говорит, что значение $data['date']=000-00-00, да и если вывлдить без модификатора |format - тоже 0000-00-00 показывает. В чём дело и как побороть?

Попутно: можно ли натравить на дату модификатор |default? Пробовал синтаксис {$data['date']|default:""} - не влияет на вывод, всё равно или 0000-00-00, или 30.11.1999
 

Demiurg

Guest
date_format использует функцию strftime. Можешь написать свой фильтр, который будет отслеживать подобные даты.
 
Сверху