我有一个计算字段(字段:length_of_stay)用于计算内容类型“患者”的开始日期(字段:date_of_admission)和当前日期之间的差异。
我在字段设置中的计算代码 (PHP) 是:
`$field_date_of_admission = array_pop(field_get_items($entity_type, $entity,
'field_date_of_admission'));
$start_date = new DateObject($field_date_of_admission['value'], '');
$current_date = new DateObject('now', '', 'm/d/Y');
$length_of_stay = $start_date->difference($current_date, 'days');
$entity_field[0]['value'] = $length_of_stay;
}`
显示代码为:
`$display_output = $entity_field_item['value'];`
尽管它从 0 日期开始,但它可以工作。
我的问题是,当我想停用患者时,计算字段会继续计算差异,这对于我的应用程序而言似乎是错误的。(内容类型 Patient 还具有字段:active,可接受值为 Yes 或 No)。
是否可以使用 if 语句或其他东西?我实际上并不了解 PHP。有人可以在这里提供一些指导吗?