__construct () vs SameAsClassName () für den Konstruktor in PHP

Gibt es einen Vorteil bei der Verwendung__construct() anstelle des Klassennamens für einen Konstruktor in PHP?

Beispiel (__construct):

class Foo {
    function __construct(){
        //do stuff
    }
}

Beispiel (benannt):

class Foo {
    function Foo(){
        //do stuff
    }
}

Mit dem__construct Methode (erstes Beispiel) ist seit PHP 5 möglich.

Eine Methode mit demselben Namen wie die Klasse als Konstruktor (zweites Beispiel) ist von PHP Version 4 bis Version 7 möglich.