2011-09-29 40 views
3

下面是示例代碼什麼絕對參數在日期時間做:: DIFF(DateTime的[,布爾絕對=假])

$c = new DateTime(); 
$o = clone $c; 
$o->modify('-60 days'); 
$diff = $c->diff($o); 
$diff2 = $c->diff($o, TRUE); 
var_dump($diff, $diff2); 

其輸出

object(DateInterval)#3 (8) { 
    ["y"]=> int(0), ["m"]=> int(1), ["d"]=> int(29), ["h"]=> int(0), ["i"]=> int(0), 
    ["s"]=> int(0), ["invert"]=> int(1), ["days"]=> int(60) 
} 
object(DateInterval)#4 (8) { 
    ["y"]=> int(0), ["m"]=> int(1), ["d"]=> int(29), ["h"]=> int(0), ["i"]=> int(0), 
    ["s"]=> int(0), ["invert"]=> int(0), ["days"]=> int(60) 
} 

如我看到的,只有「反轉」屬性更改。這是什麼意思?

回答

7

絕對屬性將返回兩個日期時間對象之間的絕對差。這會在返回負面差異時將結果更改爲正值。

+1

謝謝,我現在明白了。使用'echo $ diff-> format('%R%a'),$ diff2-> format('%R%a');''得出'-60 + 60'答案:( – Sudhi

0

從php.net

Absolute parameter determines whether to return absolute difference. 

LOI datetime.diff