Drupal:有起始和结束时间,来计算持续时间
来自站长百科
此例使用KarenS的日期模块来创建两个日期字段field_start_time和field_end_time,它们记录小时数和分钟数。接着我们创建一个计算型字段来定义持续时间--小时数--为一类小数数字,比如1.5就是1小时30分钟。
计算型字段设定:
- Computed Code,计算代码:
$start_date = date_make_date($node->field_start_time[0]['value']); $start = $start_date->db->parts; $end_date = date_make_date($node->field_end_time[0]['value']); $end = $end_date->db->parts; $start_decimal = $start['hours'] + ($start['minutes'] / 60); $end_decimal = $end['hours'] + ($end['minutes'] / 60); $node_field[0]['value'] = $end_decimal - $start_decimal;
- 检查 'Display this field'
- Display Format,显示格式:$display = $node_field_item['value'] . " hours";
- 检查 'Store using the database settings below'
- Data Type,数据类型: float(浮点)
- Data Length,数据长度: 3,2
- 检查 'Sortable'