Die statische PHP-Anweisung
Die Magie der statischen PHP-Anweisung besteht darin, dass eine Funktion sich beim nächsten Aufruf der Funktion an den Wert einer lokalen Variablen "erinnern" kann.

In diesem Tutorial erfahren Sie, wie Sie mit der statischen PHP-Anweisung einer PHP-Funktion einen "Speicher" geben. Eine grundlegende PHP-Funktion kann sich nicht an den Wert einer lokalen Variablen erinnern, die innerhalb der Funktion erstellt oder geändert wurde. Sobald die Funktion beendet ist, verschwindet jegliches Wissen über den Wert der Funktionsvariablen. Um dieses Problem zu umgehen, können wir die statische Anweisung PHP verwenden, um die Funktion anzuweisen, sich den Wert einer lokalen Variablen von einem Aufruf einer Funktion zum nächsten Aufruf zu merken. Werfen wir einen Blick auf den Basiscode.

Funktion count_calls ()
{
statisch $ no_calls = 0;
$ no_calls ++;
echo "Diese Funktion wurde mal $ no_calls aufgerufen.";
}


Funktion Funktionsname ()
Funktion count_calls ()
Hier gibt es nichts Neues. Wie in früheren Tutorials identifiziert der Funktionsname diese Funktion und die Anweisungen für die Funktion stehen zwischen den folgenden {und}.

statische $ Variable = Wert;
statisch $ no_calls = 0;
Dies ist die statische Anweisung, mit der die laufende Summe (und die Anzahl) der Aufrufe dieser Funktion beibehalten wird. Beim ersten Aufruf der Funktion initialisiert die statische Anweisung die Variable $ no_calls auf den Anfangswert 0. Wenn die Funktion fortgesetzt wird, wird der Wert der Variablen um 1 erhöht. Beim zweiten und nachfolgenden Aufruf der Funktion wird: Der erhöhte Wert der Variablen wird vom letzten Mal gespeichert. Dies mag nicht magisch erscheinen, bis Sie feststellen, dass der Wert der Variablen ohne die statische Anweisung bei jedem Aufruf dieser Funktion Null ist.

$ variable ++;
$ no_calls ++;
Dieser Ausdruck erhöht den aktuellen Wert der Variablen $ no_calls um 1. Die Magie der statischen Anweisung besteht darin, dass sich die Funktion jetzt beim nächsten Aufruf der Funktion an den erhöhten Wert der Variablen $ no_calls "erinnern" kann.

Echo-Anweisung
echo "Diese Funktion wurde mal $ no_calls aufgerufen.";
Diese Echoanweisung druckt den Text und den neuen (erhöhten) Wert der Variablen $ no_calls an den Webbrowser.

Das ist alles, was es zu unserer Funktion gibt. Beim nächsten Aufruf dieser Funktion wird der Wert der Variablen $ no_calls aus der letzten Ausführung der Funktion gespeichert und dann erneut um eins erhöht.





Video-Anleitungen: Superglobale GET - (PHP 1-020) (Kann 2024).