Heim  >  Artikel  >  Backend-Entwicklung  >  Späte statische Bindung in PHP

Späte statische Bindung in PHP

不言
不言Original
2018-07-09 17:45:101267Durchsuche

Dieser Artikel stellt hauptsächlich die späte statische Bindung von PHP vor, die einen gewissen Referenzwert hat. Jetzt kann ich ihn mit allen teilen, die ihn brauchen.

Ab PHP 5.3.0. PHP hat eine Funktion namens „späte statische Bindung“ hinzugefügt, mit der statisch aufgerufene Klassen innerhalb des Vererbungsbereichs referenziert werden. Dies ist die offizielle Erklärung von PHP, das heißt, während des Vererbungsprozesses einer Klasse ist die verwendete Klasse nicht mehr die aktuelle Klasse, aber Calling-Klasse.

Die späte statische Bindung wird mit dem Schlüsselwort static implementiert. Durch diesen Mechanismus wird „static::“ nicht mehr in die Klasse aufgelöst, in der die aktuelle Methode definiert ist, sondern wird währenddessen berechnet Tatsächliche Laufzeit. Das erhaltene Ergebnis ist die Klasse, die ursprünglich zur Laufzeit aufgerufen wurde.

Obwohl es „späte statische Bindung“ genannt wird, ist es nicht auf Aufrufe statischer Methoden beschränkt.

class A{
    public static function call(){
        echo "class A<br/>";
    }
    public static function test(){
        self::call();
        static::call();
    }
}
class B extends A{
    public static function call(){
        echo "class B";
    }
}

echo (B::test());
//输出结果:
//class A
//class B

Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er wird für das Studium aller hilfreich sein. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website.

Verwandte Empfehlungen:

PHP implementiert einfach das Senden von E-Mails und verhindert, dass diese als Spam behandelt werden

So verwenden Sie PHP Arrays

Das obige ist der detaillierte Inhalt vonSpäte statische Bindung in PHP. 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