Heim >Backend-Entwicklung >PHP-Tutorial >Probleme mit der Vererbung und verzögerter statischer Bindung in PHP
Ein seit langem bestehendes Problem mit dem Vererbungsmodell von PHP besteht darin, dass es schwierig ist, den Endzustand einer erweiterten Klasse in der übergeordneten Klasse zu referenzieren. Dies würde vor PHP5.3 passieren
1 php
2 3 Klasse ParentBase {
4 5 statisch $property = ' Übergeordneter Wert';
6 7 öffentlich statisch Funktion render() {
8 9 zurückkehrenselbst::$property;
10 11 }
12 13 }
14 15 Klasse Descendant erweitert ParentBase {
16 17 statisch $property = 'Absteigender Wert';
18 19 }
20 21 Echo Nachkomme::render();
22
Durch die Einführung der verzögerten statischen Bindungsfunktion können Sie das Schlüsselwort „statischer Bereich“ verwenden, um auf die Eigenschaften einer Klasse oder den Endwert einer Methode zuzugreifen, wie im Code gezeigt.
1 php
2 3 Klasse ParentBase {
4 5 statisch $property = 'Parent Value';
6 7 öffentlich statisch Funktion render() {
8 9 zurück statisch::$property;
10 11 }
12 13 }
14 15 Klasse Descendant erweitert ParentBase {
16 17 statisch $property = 'Nachkommenwert';
18 19 }
20 21 Echo Nachkomme ::render();
22
Das Obige hat die Probleme der Vererbung und der verzögerten statischen Bindung in PHP vorgestellt, einschließlich ihrer Aspekte. Ich hoffe, dass es für Freunde hilfreich sein wird, die sich für PHP-Tutorials interessieren.