PHP-Anwendungen durch OOP-Verfahren optimieren

Der Ansatz, wie objektorientiertes Programmieren in Verbindung mit PHP realisiert werden kann, wird hier am Beispiel eines Fahrzeugs als PHP-Klasse beschrieben:

Innerhalb der neuen Fahrzeug-Klasse verknüpfen Methoden (PHP-Funktionen) die Anwendungen mit den Merkmalen des Fahrzeugs. Jede dieser Methoden dient zur Beschreibung der Fahrzeug-Klasse für die Anwendung, so dass sich diese auf sinnvolle Weise einsetzen lässt. Hierzu das folgende Beispiel (das natürlich nicht funktional ist):

Dies ergibt also eine Reihe von ‚Treffern‘. Wenn hier alles vertraut aussieht, liegt das daran, dass die OOP-Funktionalität von PHP der von C oder Java stark ähnelt. Die eigentliche Herausforderung besteht jedoch in ihrer sinnvollen Nutzung unter umfassender und effizienter Verwendung der Verkapselung.

Um herauszufinden, was über das Fahrzeug bekannt sein muss, um es in eine Anwendung zu integrieren, kann die Definition der Basiselemente eines Fahrzeugs hilfreich sein. Beispielsweise können Fahrzeuge nach der Anzahl ihrer Türen oder Räder geordnet werden.

Um zu bestimmen, wie viele Räder ein Fahrzeug hat, benötigt man eine Methode, die diese Information liefert. In PHP könnte man dazu wie in Listing A dargestellt vorgehen.

Die hier verwendete Fahrzeug-Klasse enthält eine Methode namens „zeigeRäder“, welche die Anzahl der Räder ausgibt, wenn von der Anwendung ein Fahrzeugtyp angegeben wird. Wie lässt sich diese Information nun an die Fahrzeug-Klasse weitergeben? Zum besseren Verständnis hierzu einige praktische Beispiele, bei denen die Klasse implementiert und deren „zeigeRäder“-Methode aufgerufen wird, um die Anzahl der Räder eines Fahrzeugs vom Typ Auto zu ermitteln:

Der Typ des zu erstellenden Fahrzeugs wurde also als Auto deklariert. Da mit PHP gearbeitet wird, könnte dieser Wert dynamisch sein; um das Verfahren abzukürzen, wird er hier jedoch hart codiert.

Um die Klasse verwenden zu können, gilt es zunächst eine Instanz der Klasse in der Anwendung zu erstellen:

Es wurde eine Instanz von Fahrzeug erstellt, die „mein Fahrzeug“ heißt. Diese stellt eine eindeutige Instanz der Fahrzeug-Klasse dar und enthält sämtliche in Fahrzeug verfügbaren Daten (Methoden und Eigenschaften).

Jetzt kann festgestellt werden, wie viele Räder das Fahrzeug besitzt:

Wie man sieht, wurde die „zeigeRäder“-Methode von „meinFahrzeug“ aufgerufen und ihr der Fahrzeugtyp mitgeteilt. Wenn alles ordnungsgemäß verläuft, werden die benötigten Daten ausgegeben:

Möchte man die Anzahl der Türen ermitteln, muss man eine weitere Methode schreiben, die die Anzahl der Türen abfragt, wie in Listing B dargestellt.

Einfache Programmierung, einfache Pflege
Wie aus diesem einfachen Beispiel hervorgeht, ist objektorientiertes Programmieren in PHP gar nicht so schwierig. Mit dem Einsatz von OOP-Verfahren und Klassen, wie in der gezeigten Fahrzeug-Klasse demonstriert, ließe sich ohne großen Aufwand auch ein OOP-Einkaufswagen erstellen, der aus Klassen besteht, die der Fahrzeug-Klasse ähneln. Aufgrund seiner objektorientierten Beschaffenheit wäre der entstehende Code einfach zu lesen, zu pflegen und zu skalieren.

In Listing C ist die ausführlichere Version des Codes der hier vorgestellten Anwendung zur Einordnung von Fahrzeugen zu sehen. An dieser lassen sich die objektorientierten Fähigkeiten von PHP gut erkennen.

ZDNet.de Redaktion

Recent Posts

Gaming-bezogene Phishing-Attacken um 30 Prozent gestiegen

Über drei Millionen Angriffsversuche unter Deckmantel von Minecraft / YouTube-Star Mr. Beast als prominenter Köder

2 Tagen ago

KI erleichtert Truckern die Parkplatzsuche

Die Prognose für die Anfahrt bezieht das Verkehrsaufkommen, die Stellplatzverfügbarkeit sowie die Lenk- und Ruhezeiten…

2 Tagen ago

EU AI-Act Risk Assessment Feature

Unternehmen können mit Casebase Portfolio an Daten- und KI-Anwendungsfällen organisieren.

2 Tagen ago

Smarthome-Geräte sind Einfallstor für Hacker

Smart-TV oder Saugroboter: Nutzer schützen ihre smarten Heimgeräte zu wenig, zeigt eine repräsentative BSI-Umfrage.

2 Tagen ago

Core Ultra 200V: Intel stellt neue Notebook-Prozessoren vor

Im Benchmark erreicht der neue Core Ultra 200V eine Laufzeit von 14 Stunden. Intel tritt…

2 Tagen ago

Irrglaube Inkognito-Modus

Jeder dritte hält sich damit für unsichtbar. Wie widersprüchlich unser Datenschutzverhalten oft ist, zeigt eine…

3 Tagen ago