Statische Mehtoden sind ein weit verbreitetes Konstrukt objektorientierter Programmiersprachen, das auch von PHP unterstützt wird.
Sehen Sie hier an einem einfachen Beispiel, wie man in PHP Klassen mit statischen Methoden erstellt und diese aufruft, ohne die Klassen davor explizit zu instanziieren.
In diesem Artikel geht es primär um die Syntax. Grundkentnisse in der Objektorientierung (z.B. in Java oder C++) sind Voraussetzung.
Voraussetzung für die hier gezeigten PHP-Scripte: PHP 5
Schlüsselwort ’static‘
Um statische Methoden oder Variablen zu Kennzeichnen wird das Schlüsselwort static
in PHP verwendet.
Werden zum Beispiel in einem größeren PHP Projekt immer wieder die selben Nachrichten zur Ausgabe benötigt, so kann man hierfür eine Klasse mit statischen Methoden verwenden:
<?php
class MessageGenerator{
static function getErrorMessage() {
return "Example Error Message!";
}
static function getLoginMessage() {
return "Welcome, you logged in to Example-Site";
}
static function getLogoutMessage() {
return "Good Bye! See you soon!";
}
static function getCopyright() {
return "© 2022 Computer-Masters.de";
}
}
?>
Der Aufruf einer statischen Methode sieht dann wiefolgt aus (man beachte, die Klasse wurde davor nicht instanziiert):
<?php
##Die Klasse MessageGenerator im aktuellen Kontext bekannt machen
require_once("MessageGenerator.php");
## ... beliebiger Code
if($benutzer->istAngemeldet()) {
MessageGenerator::getLoginMessage();
} else {
MessageGenerator::getLogoutMessage();
}
##...
?>