目前我有这个代码(见下文)。我很确定我需要调整数组或者可能在某处添加“d”。通常我只在前端工作,所以我有点踩到未知的水域。
我认为需要调整的部分是“将未来日期格式化为间隔”部分。
if ($element['#field_name'] == 'field_test_dates') {
foreach (element_children($element['#items']) as $key) {
$item = $element['#items'][$key];
$close_date = new DateObject($item['value2'], $item['timezone']);
$start_date = new DateObject($item['value'], $item['timezone']);
$element = 'time';
$attributes = array(
'class' => 'date-display-single',
'property' => 'dc:date',
'datatype' => 'xsd:dateTime',
'datetime' => $close_date->format('m/d/Y H:i'),
);
if (REQUEST_TIME < $start_date->format('U')) {
// Display future start date as "COMING SOON"
$text = t('COMING SOON');
}
else {
if (REQUEST_TIME >= $close_date->format('U')) {
// Always display past dates as "CLOSED".
$text = t('CLOSED');
}
else {
// Format future dates as intervals.
$text = t('ENDS IN @days', array(
'@days' => strtoupper(date_format_interval($close_date, 1)),
));
}
}
$vars['items'][$key]['#markup'] = "<{$element}" .drupal_attributes($attributes) . ">{$text}</{$element}>";
}
}
答案 0 :(得分:0)
通过一些调查,您可以找到date_format_interval()
正在呼叫format_interval()
:
http://www.drupalcontrib.org/api/drupal/drupal!includes!common.inc/function/format_interval/7
&#34;粒度&#34;您传递给date_format_interval()
的参数会进一步传递到format_interval()
。
检查第二个链接以查看该参数的使用方式以及应传递的值。