Smarty: первые шаги
28th November 2004 - 23:28
date_format
в Smarty формирует дату по заданному формату strftime()
. Хочется формата date()
.
/templates/*.tpl
{$post.timestamp|date_imfo}
/plugins/modifier_date_imfo.php
function smarty_modifier_date_imfo ($string, $format='jS F - H:i')
{
return ($string!='') ? date($format,$string) : '';
}
Приходится инклудить файл ради одной стандартной функции PHP. Издержки универсальности. По-другому нельзя? Или Б. с ним?
Categories: PHP | comments: (5)
Комментарии
1. Латрек 29th November 2004 - 00:45
А почему тебе не нравится strftime?
Mash:
Для strftime() не нашёл формат «28th …». Да и date_format — тоже modifier (так же инклюдится). Вопрос действительно из серии «первые шаги». Я пока в механизмы/идеологию вникаю. Просто интересно: именно так поступают обычно или можно сделать лучше?
2. Латрек 29th November 2004 - 01:55
Хм… я тоже такого формата не нашел, во всяком случае тут ничего подобного нет.
А по поводу инклюда … он ведь происходит только один раз и то только тогда, когда это нужно
Mash:
Спасибо. Оставлю как есть и пойду спать. :)
3. dull.ru 28th December 2004 - 05:57
проблема с date() в том, что она не рассматривает локаль )) увы.
4. Макс 14th January 2005 - 18:40
Такой вот простой вопрос, но нигде не могу найти ответа. Как внутрь PHP кода {php}{/php} вставить результаты запроса в коде Smarty? То есть, как смешать оба кода, чтобы всё отображалось? Например (это только принципиальный пример:
{init_articlelist name=«articlelist1» parent=1072}
{foreach from=$articlelist1 item=articles1 key=artkey1}
{if $artkey1 < 3}
{init_article id=$articles1->id name=«article1»}
{php}
echo «{$articles1->date}<br>{$articles1->title}<br><br>»;
{/php}
{/if}
{/foreach}
Вот как эти {$articles1->date} и {$articles1->title} вставить между {php} и {/php}, чтобы всё работало?
5. nalevo 17th February 2005 - 16:37
Вот вы лучше посоветуйте как форматировать даты до 1970-го года???