In diesem Artikel werden wir die Grundlagen der objektorientierten Programmierung unter Verwendung von PHP-Klassen untersuchen. Die Programmierung, die allgemein als OOP bezeichnet wird, ist ein Ansatz, der Ihnen hilft, komplexe Anwendungen auf eine Weise zu entwickeln, die langfristig leicht zu warten und skalierbar ist. In der Welt von OOP (um Objekt in PHP zu erstellen) werden reale Entitäten wie
,oder
als Objekte behandelt. In objektorientierter Programmierung interagieren Sie mit Ihrer Anwendung mithilfe von Objekten. Dies steht im Gegensatz zur prozeduralen Programmierung, bei denen Sie hauptsächlich mit Funktionen und globalen Variablen interagieren. Ein " Klasse, aber viele Personenobjekte können Instanzen dieser Klasse sein - Person
, Car
, Animal
usw.
Die Klasse definiert Eigenschaften. Zum Beispiel könnten wir für die Personklasse , und haben. Anschließend hat jedes Personenobjekt seine eigenen Werte für diese Eigenschaften. Sie können auch Methoden in der Klasse definieren, mit denen Sie die Werte von Objekteigenschaften manipulieren und Operationen auf Objekten ausführen können. Beispielsweise können Sie eine -Methode definieren, die die Objektinformationen in einer Datenbank speichert. Eine Klasse ist eine Vorlage, die eine reale Entität darstellt, und definiert Eigenschaften und Methoden der Entität. In diesem Abschnitt werden wir die grundlegende Anatomie einer typischen PHP -Klasse erörtern. Schauen wir uns also die -Klasse im folgenden Snippet an, das die Mitarbeiterentität darstellt. Anschließend deklarieren wir die Eigenschaften, den Konstruktor und die anderen Klassenmethoden. Im obigen Beispiel haben wir drei Eigenschaften - Person
dan
, zainab
und hector
definiert. In den meisten Fällen auf Klasseneigenschaften werden über instanziierte Objekte zugegriffen.
Diese Eigenschaften sind private
, was bedeutet, dass sie nur aus der Klasse in PHP zugegriffen werden können. Dies ist die sicherste Zugangsniveau für Eigenschaften. Wir werden später in diesem Artikel die verschiedenen Zugriffsebenen für Klasseneigenschaften und -methoden in PHP diskutieren. Wir werden sehen, wie Objekte in den nächsten Abschnitten instanziiert werden, aber im Moment müssen Sie nur wissen, dass ein Konstruktor verwendet wird, um Objekteigenschaften zu initialisieren, wenn das Objekt erstellt wird. In den meisten Fällen werden sie verwendet, um Objekteigenschaften auf und zu manipulieren und verwandte Operationen auszuführen.
Was ist ein Objekt in PHP? Wenn Sie nun eine Klasse verwenden möchten, müssen Sie sie instanziieren, und das Endergebnis ist ein Objekt. Deshalb könnten wir uns eine Klasse als Blaupause vorstellen, und ein Objekt ist eine tatsächliche Sache, mit der Sie arbeiten können. Instanz dieser Klasse. In unserem Fall benötigt der Konstruktor der
-Klasse drei Argumente, und daher haben wir diese übergeben, als wir das __construct
-Objekt erstellt haben. Wie bereits erwähnt, wird die
Im vorherigen Abschnitt haben wir besprochen, wie Objekte der Employee
-Klasse instanziiert werden. Es ist interessant festzustellen, dass das $objEmployee
-Objekt selbst Eigenschaften und Methoden der Klasse zusammenfasst. Mit anderen Worten, es verbirgt diese Details aus dem Rest des Programms. In der Welt der OOP wird dies als Datenkapselung bezeichnet. Und das bringt uns zu einem anderen Thema für die Diskussion
Zugriffsebenen. Als Öffentlichkeit kann es von überall außerhalb der Klasse zugegriffen werden. Der Wert einer öffentlichen Eigenschaft kann von überall in Ihrem Code geändert werden. Daher können Sie es von überall außerhalb der Klasse festlegen, wie wir es hier getan haben. Dies bedeutet, dass Sie Getter- und Setter -Methoden definieren müssen, um den Wert dieser Eigenschaft zu erhalten und festzulegen. Daher müssen Sie den Wert der privaten Eigenschaft mithilfe der Setter -Methode festlegen, wie wir die -Methode verwendet haben. Zum Beispiel sollten möglicherweise einige Maßnahmen ergriffen werden (Aktualisierung einer Datenbank, beispielsweise oder erneutem Rendern einer Vorlage), wenn sich diese Eigenschaft ändert. In diesem Fall können Sie eine Settermethode definieren und eine spezielle Logik verarbeiten, wenn die Eigenschaft geändert wird. Wir werden die Erbschaft im nächsten Abschnitt diskutieren, damit wir etwas später zum geschützten Zugriffsniveau zurückkehren.
Vererbung ist ein wichtiger Aspekt des objektorientierten Programmierparadigmas, mit dem Sie Eigenschaften und Methoden anderer Klassen erben können, indem Sie sie erweitern. Die Klasse, die vererbt wird, wird als übergeordnete Klasse bezeichnet, und die Klasse, die die andere Klasse erbt, wird die untergeordnete Klasse genannt. Wenn Sie ein Objekt der Kinderklasse instanziieren, erbt es auch die Eigenschaften und Methoden der übergeordneten Klasse. Klasse.
Versuchen wir, ein Beispiel für die reale Welt zu durchlaufen, um zu verstehen, wie es funktioniert. Jetzt kann die
-Klasse auf alle Eigenschaften und Methoden der Person
In dem obigen Beispiel kann das Employee
-Objekt auf
-Methoden zugreifen, die in der
-Klasse definiert sind, da sie als öffentlich deklariert werden. Schließlich kann das<?php<br>class Employee<br>{<br> private $first_name;<br> private $last_name;<br> private $age;<br> <br> public function __construct($first_name, $last_name, $age)<br> {<br> $this->first_name = $first_name;<br> $this->last_name = $last_name;<br> $this->age = $age;<br> }<br><br> public function getFirstName()<br> {<br> return $this->first_name;<br> }<br><br> public function getLastName()<br> {<br> return $this->last_name;<br> }<br><br> public function getAge()<br> {<br> return $this->age;<br> }<br>}<br>?><br>
-Methode der Employee
-Klasse zugreifen, da es als privat deklariert wird. Einführung in die Erbschaft. Es hilft Ihnen, die Code-Duplikation zu reduzieren, und fördert somit die Wiederverwendbarkeit von Code. Überschreiben Sie diese Methode. Dies nennt man Methodenüberschreibung. Lassen Sie uns schnell ein Beispiel in der Praxis durchlaufen, um das Konzept der Überschreibung des Verfahrens zu verstehen. extends
<?php<br>class Employee<br>{<br> private $first_name;<br> private $last_name;<br> private $age;<br> <br> public function __construct($first_name, $last_name, $age)<br> {<br> $this->first_name = $first_name;<br> $this->last_name = $last_name;<br> $this->age = $age;<br> }<br><br> public function getFirstName()<br> {<br> return $this->first_name;<br> }<br><br> public function getLastName()<br> {<br> return $this->last_name;<br> }<br><br> public function getAge()<br> {<br> return $this->age;<br> }<br>}<br>?><br>
Wie Sie sehen können, haben wir das Verhalten der formatMessage
-Methode geändert, indem wir es in der BoldMessage
-Klasse überschreiben. Wichtig ist, dass eine Nachricht basierend auf dem Objekttyp unterschiedlich formatiert wird, unabhängig davon, ob es sich um eine Instanz der übergeordneten Klasse oder der untergeordneten Klasse handelt. Dies wird in PHP nicht direkt unterstützt, aber es gibt einige Workarounds, um eine ähnliche Funktionalität zu erzielen. Objektorientierte Programmierung ist ein großes Thema, und wir haben nur die Oberfläche seiner Komplexität zerkratzt. Ich hoffe, dass dieses Tutorial Ihnen dabei geholfen hat, Sie mit den Grundlagen von OOP zu beginnen und Sie motiviert, fortgeschrittenere OOP-Themen zu erfahren. Heute haben wir im Kontext von PHP einige grundlegende Konzepte von OOP diskutiert und auch die Gelegenheit genutzt, um ein paar Beispiele in der realen Welt einzuführen.
Das obige ist der detaillierte Inhalt vonObjektorientierter PHP mit Klassen und Objekten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!