【问题标题】:Symfony2 DateTime difference not workingSymfony2 DateTime 差异不起作用
【发布时间】:2013-10-09 22:15:27
【问题描述】:

我的树枝模板中有这个变量:

{{aWorker.timeToRetirement|date('Y-m-d')}}

当我执行页面时,它返回的正是这个文本:'Y-m-d' 当然没有 ''。现在我真正想要得到的是两个日期之间的差异,比如说一个未来的日期(是一个人/工人的退休日期,如果你需要它,你可以得到更多关于我在做什么的信息here)'2060 -12-01' 和今天的日期 '2013-10-03'。我想在我的 Entity 类中使​​用这个 var 和方法:

//...
//Var containing the retirement date
private $retireYear;
//var to store time to retirement from today
private $timeToRetirement;
//...
    public function getTimeToRetirement (){
        $this->timeToRetirement = $this->retireYear->diff(new \DateTime('today'));
    return $this->timeToRetirement;
}

我做错了什么?为什么 var 没有返回今天和退休日期之间的差异

【问题讨论】:

    标签: php datetime symfony


    【解决方案1】:

    您的函数返回一个DateInterval 对象,因此您需要使用它的format() 方法来生成所需的字符串。

    【讨论】:

    • 完全正确,谢谢@vascowhite,我已将返回更改为:code return $this->timeToRetirement->format('%Y years, %m months, %d days');,并将模板变量更改为:code {{aWorker.timeToRetirement}} 再次感谢。我不知道如何在我的评论中添加代码
    • 抱歉错别字,我现在正在学习如何做 cmets。
    猜你喜欢
    • 1970-01-01
    • 2023-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多