出生年龄过滤的简单日期
如何 …
1 - 使用扩展的 twig 扩展类
use \Twig_Extension
class dobToAge extends \Twig_Extension {
2 - 通过重写 getFilters()
方法添加适当的过滤器
public function getFilters() {
return array(
'age' => new \Twig_Filter_Method($this, 'getAge'),
);
}
3 - 添加一些逻辑以获得给定出生日期的年龄
public function getAge($date)
{
if (!$date instanceof \DateTime) {
// turn $date into a valid \DateTime object or let return
return null;
}
$referenceDate = date('01-01-Y');
$referenceDateTimeObject = new \DateTime($referenceDate);
$diff = $referenceDateTimeObject->diff($date);
return $diff->y;
}
}
然后,按如下方式调用过滤器,
{{ yourDateOfBirthInstance | age }}