PHP上ではこのdatetime型の内容は基本文字列として扱われています。そもそもPHPの変数と言うのは型というものがありません。文字列同士で四則計算してもエラーが起こらなかったりします。);こうすると4026が返ってきます。変数の中身が文字列の場合、文字が入る手前部分までは数値として読み取り、その部分だけを計算の対象とするようです。この場合はどちらの変数も2013までを数値とみて、この部分を加算してます。ちなみに最初から数字以外の文字が入っている場合は0になります。ように時間だけの比較も可能です。右辺の省略した日付は自動的に左辺の日付と同じものが入るようです。すると偽の処理に入ります。話がそれました、時間計算の話に戻ります。PHPには時間型と判断される文字列を数値に直す関数が用意されています。それがstrtotime()です。1秒刻みで数値化してくれる関数ですが、この関数で直された数値には基準値と言うものが存在します。その基準値を元に引数で入れたdatetimeの文字列がどれだけ差が出ているかを計算していると思われます。日付はともかく、なぜ9時なのかは・・・多分子午線の都合だと思います。パソコンの初期設定で時計の設定をした時のGMTが勝手に加算されてるんじゃないでしょうか。