Heim  >  Artikel  >  Backend-Entwicklung  >  Können der Klassenname und der Methodenname in PHP gleich sein?

Können der Klassenname und der Methodenname in PHP gleich sein?

王林
王林Original
2020-09-28 14:12:333319Durchsuche

Der Klassenname und der Methodenname in PHP können identisch sein. Wenn der Methodenname mit dem Klassennamen übereinstimmt und kein __construct vorhanden ist, wird die Methode als Konstruktor behandelt. Wenn es als Konstruktor verwendet wird und kein [parent::__construct();] vorhanden ist, wird der Konstruktor der übergeordneten Klasse nicht ausgeführt.

Können der Klassenname und der Methodenname in PHP gleich sein?

Wenn der Methodenname denselben Klassennamen hat und kein __construct vorhanden ist, wird die Methode als Konstruktor behandelt.

(Empfohlenes Tutorial: php-Video-Tutorial)

Wenn es als Konstruktor verwendet wird und kein parent::__construct(); vorhanden ist, wird der Konstruktor der übergeordneten Klasse trotzdem nicht ausgeführt.

Beispiel:

//php 5.6
class father{
  public function __construct() {
    echo __METHOD__;
  }
}
class son extends father{
  //public function __construct() {
  //  parent::__construct();
  //  echo __METHOD__;
  //}
  public function son() {
    //parent::__construct();
    echo __METHOD__;
  }
}
$a=new son();

Verwandte Empfehlungen: php-Training

Das obige ist der detaillierte Inhalt vonKönnen der Klassenname und der Methodenname in PHP gleich sein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn