In various cases I need to sort a Doctrine\Common\Collections\ArrayCollection according to a property in the object. Without finding a method doing that right away, I do this: // $collection instanceof Doctrine\Common\Collections\ArrayCollection $array = $collection->getValues(); usort($array, function($a, $b){ return ($a->getProperty() < $b->getProperty()) ? -1 : 1 ; }); $collection->clear(); for