Beispiel 1: Implementieren Sie IOC mithilfe der Methodenfunktion
Um diesem Beispiel zu folgen, erstellen Sie eine PHP -Datei mit dem folgenden Skript. Hier hängt Classa von ClassB und Classc ab. Wenn klassische oder classc geändert werden, ist Classa betroffen. Wenn ClassB und Classc von verschiedenen Programmierern entwickelt werden, tritt ein Abhängigkeitsproblem auf. Dieses Problem kann durch gelöst werden IOC. Im Skript werden zwei Variablen als Objektvariablen von CLASSB und CLASSC deklariert, die als Objektvariablen fungieren. Wenn das Methode() Die Funktion von classa wird aufgerufen, dann werden $ classb und $ classc initialisiert und die Methode() Funktionen von ClassB und Classc werden aufgerufen.
// Klassea definierenInitialisierung der Klasse
";Initialisierung von ClassB
";Die Ausgabe von classB
";Initialisierung der Klassen
";Die Ausgabe von Classc
";Ausgang:
Die folgende Ausgabe wird erstellt, indem das obige Skript vom Webserver ausgeführt wird. Hier wird der Konstruktor der drei Klassen aufgerufen, wenn Classa erstellt wird. Als nächstes die Methode() Funktionen von ClassB und Classc werden aufgerufen, um die Ausgabe zu generieren.
Beispiel 2: Implementieren Sie IOC mit Konstruktoren
Um diesem Beispiel zu befolgen, erstellen Sie eine PHP -Datei mit dem folgenden Skript. Hier hängt der Konstruktor der Classa von ClassB und Classc ab. ClassB und Classc werden als Argumente an den Konstruktor von Classa übergeben. ClassB und Classc werden außerhalb der Classa erstellt. Wenn also in ClassB oder ClassC etwas geändert wird, sind in Classa keine Änderungen erforderlich. Eine formatierte Textnachricht wird vom Konstruktor von ClassB und ClassC gedruckt. Die Methoden () -Funktionen von ClassB und Classc werden aus dem aufgerufen Methode() Funktion von Classa.
Classb = $ b;Initialisierung von ClassB
";Die Ausgabe von classB
";Initialisierung der Klassen
";Die Ausgabe von Classc
";Ausgang:
Die folgende Ausgabe wird erstellt, indem das obige Skript vom Webserver ausgeführt wird. Hier wurden die ersten beiden Zeilen in der Ausgabe aus dem Konstruktor von CLASSB und CLASSC generiert. Dann ist die Methode() Funktionen von ClassB und Classc wurden aufgerufen und die Ausgabe wurde generiert.
Beispiel 3: Implementieren Sie IOC mithilfe der Vererbung
Um diesem Beispiel zu befolgen, erstellen Sie eine PHP -Datei mit dem folgenden Skript. Hier sind Classa und ClassB nicht verwandt, und ChildClass1 und ChildClass2 erben classB. Der Konstruktor von Classa nimmt das Objekt einer anderen Klasse als Argument an und initialisiert die Klassenvariable $ class_obj. Diese Klassenvariable wird verwendet, um die aufzurufen Methode() Funktion des Klassenobjekts, das im Konstruktor von Classa verwendet wird.
Class_obj = $ obj;Die Ausgabe von classB
";Die Ausgabe von ChildClass1
";Die Ausgabe von ChildClass2
";Ausgang:
Die folgende Ausgabe wird erstellt, indem das obige Skript vom Webserver ausgeführt wird. Das Objekt von ChildClass1 wurde als Argument beim Erstellen von Classa übergeben, bei der es sich um eine untergeordnete Klasse von ClassB handelt. Hier ist es nicht notwendig zu wissen. Nach der Initialisierung von Classa nannte die Klassenvariable $ class_obj die Methode() Funktion von ChildClass1 und druckte den Text als Ausgabe aus.
Abschluss
IOC ist ein fortschrittliches objektorientiertes Programmierkonzept. In diesem Tutorial haben wir Ihnen gezeigt, wie Sie IOC in PHP implementieren, indem Sie einige einfache Beispiele verwenden.