PHPのDateTime型は比較演算子がオーバーロードされており、普通に比較することができる。未来の日時の方が"大きい"という扱いがされる。
<?php
$date1 = new DateTime('2015-01-01');
$date2 = new DateTime('2015-01-02');
$date3 = new DateTime('2015-01-02');
var_dump($date1 < $date2); // true
var_dump($date2 <= $date3); // true
var_dump($date1 == $date2); // false
var_dump($date2 == $date3); // true
var_dump($date2 === $date3); // false
PHPのオブジェクトは[]などを除けば演算子オーバーロードはサポートされていない(エクステンションを書けば可能だけど)ので、 こんなことができるクラスは非常に珍しい 。
この記法を使うときはコメントを書いておいた方がいいかもしれない。
(編集)
通常のオブジェクトの比較についてはコメント欄にて @tadsan さんの解説がわかりやすいので参照のこと。