


Detaillierte Erläuterung der Eigenschaften und Methoden statischer PHP-Variablen und der Verwendung der verzögerten Bindung
Das Typschlüsselwort statischer Variablen ist static. In diesem Artikel geht es hauptsächlich darum, die Verwendung statischer Eigenschaften und statischer Methoden in PHP zu erlernen. Außerdem kann das Schlüsselwort „Static“ (statisch) zum Definieren statischer Methoden und Eigenschaften verwendet werden um statische Variablen und
späte statische BindungStatische Variable statische VariableStatische Variablen existieren nur im lokalen Funktionsbereich, aber wenn die Programmausführung diesen Bereich verlässt, geht ihr Wert nicht verloren. Mit anderen Worten: Die Variable behält ihren ursprünglichen Wert bei, wenn diese Funktion das nächste Mal ausgeführt wird. Um eine Variable als statisch zu definieren, fügen Sie einfach das
statische Schlüsselwort Statische Variablen bieten auch eine Möglichkeit,function testing() { static $a = 1; $a *= 2; echo $a."\n"; } testing(); testing(); testing(); testing(); /** * 2 * 4 * 8 * 16 * [Finished in 0.1s] */
zu verarbeiten. Eine rekursive Funktion ist eine Funktion, die sich selbst aufruft. Seien Sie beim Schreiben rekursiver Funktionen vorsichtig, da diese möglicherweise auf unbestimmte Zeit rekursiv sind. Sie müssen sicherstellen, dass es geeignete Möglichkeiten gibt, die Rekursion zu beenden. In diesem Beispiel speichert die Funktion „testing()“ nach jeder Ausführung intern den Wert der Variablen „$a“. Beim nächsten Aufruf von „testing()“ wird der Wert von $a wiederhergestellt, und „testing()“ multipliziert diesen Wert mit 2 und gibt ihn aus. Der anfängliche Standardwert einer Variablen ist 1, und diese Zuweisung erfolgt nur bei der ersten Initialisierung der Variablen. Diese Operation wird nicht bei jeder Ausführung der Funktion aufgerufen.
2.
Verwendung statischer Elemente in KlassenEs gibt zwei Hauptverwendungen des Schlüsselworts static in Klassen: Eine wird zum Definieren statischer Elemente verwendet, die andere Art ist Wird verwendet, um statische Methoden zu definieren. Wenn Sie eine Klasseneigenschaft oder Methode als „statisch“ deklarieren, können Sie direkt darauf zugreifen, ohne die Klasse zu instanziieren. Auf statische Eigenschaften kann nicht über ein Objekt einer instanziierten Klasse zugegriffen werden (statische Methoden jedoch schon). Auf statische Eigenschaften kann von Objekten nicht über den ->-Operator zugegriffen werden. Innerhalb der Klasse können wir den Bereichsqualifizierungsoperator verwenden, um auf Variablen auf verschiedenen Geltungsbereichsebenen zuzugreifen.
Da statische Methoden nicht über Objekte aufgerufen werden müssen, ist die Pseudovariable $this in statischen Methoden nicht verfügbar. Man kann sich statische Variablen so vorstellen, dass sie zur gesamten Klasse und nicht zu einer Instanz der Klasse gehören. Im Gegensatz zu allgemeinen Instanzvariablen behalten statische Eigenschaften nur einen Variablenwert bei, und dieser Variablenwert ist für alle Instanzen gültig, was bedeutet, dass alle Instanzen diese Eigenschaft gemeinsam nutzen.
$dieser Zeiger ist die aktuelle Instanz der Klasse und ein Verweis auf das aufrufende Objekt. self:: stellt die Klasse selbst dar. Wenn Sie den self::-Bereichclass MyObject { public static $a = 0; function MyMethod() { self::$a += 2; echo self::$a . "\n"; } } $instance1 = new MyObject(); $instance1 -> MyMethod(); $instance2 = new MyObject(); $instance2 -> MyMethod(); /** * * 2 * 4 * [Finished in 0.1s] * */
Statische Methode
Die Regeln für statische Methoden sind die gleichen wie für statische Variablen. Eine Methode kann mit dem Schlüsselwort static als statisch markiert werden, und auf statische Methoden kann über den Namen der Klasse und den Bereichsoperator (::) zugegriffen werden.Es gibt einen wichtigen Unterschied zwischen statischen Methoden und nicht statischen Methoden: Wenn wir eine statische Methode aufrufen, müssen wir keine Instanz der Klasse mehr besitzen.
Der obige Beispielcode ruft die MyOtherMethod-Methode in MyExtendObject korrekt auf und gibt den Aufruf von MyExtendObject aus [Fertig in 0,1 Sekunden].
Wenn eine Methode die Variable $this nicht enthält, sollte diese Methode eine statische Methode sein. Wenn Sie keine Instanz einer Klasse benötigen, sollten Sie auch eine statische Klasse verwenden, die eine Instanziierung überflüssig macht. Darüber hinaus kann die Variable $this nicht in statischen Methoden verwendet werden, da statische Methoden nicht zu einer bestimmten Instanz gehören.
class MyObjectBase { static function MyMethod() { static::MyOtherMethod(); } static function MyOtherMethod() { echo 'called from MyObject.'; } } class MyExtendObject extends MyObjectBase { static function MyOtherMethod() { echo 'called from MyExtendObject.'; } } MyExtendObject::MyMethod();
Lazy binding
static:: macht die Verwendung von self:: und parent:: überflüssig. Sie können static verwenden, wenn Sie auf die letzte Klasse verweisen möchten, die die Funktionalität implementiert. Dieser Qualifizierer berechnet die Mitglieder der letzten Klasse in der Vererbungshierarchie unmittelbar vor der Ausführung des Codes. Dieser Vorgang wird als verzögerte Bindung bezeichnet.3. Zusammenfassung
Verwenden Sie das Schlüsselwort static, um statische Variablen zu erstellen und einen Standardinitialisierungswert bereitzustellen. Statische Variablen sind modifizierte Funktionsvariablen, deren Wert nach Ausführung einer Funktion unverändert bleibt.Das Schlüsselwort
static kann auch in Klassen verwendet werden, um Eigenschaften und Methoden zu ändern. Wenn es für eine Eigenschaft verwendet wird, führt es dazu, dass die Eigenschaft keinen Wert mehr für eine bestimmte Instanz enthält, sondern stattdessen einen Wert für die gesamte Klasse selbst. Statische Eigenschaften können von Mitgliedern gemeinsam genutzt werden.
Um auf statische Methoden zuzugreifen, können Sie (::) verwenden, das als Bereichsqualifizierer bezeichnet wird. Die linke Seite dieses Operators kann ein Klassenname oder ein vordefinierter Bereich sein. Der vordefinierte Bereich umfasst selbst übergeordnete Statik. Die rechte Seite des Operators ist eine statische Methode und Eigenschaft.
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Eigenschaften und Methoden statischer PHP-Variablen und der Verwendung der verzögerten Bindung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

Wenn Sie ein erfahrener PHP-Entwickler sind, haben Sie möglicherweise das Gefühl, dass Sie dort waren und dies bereits getan haben. Sie haben eine beträchtliche Anzahl von Anwendungen entwickelt, Millionen von Codezeilen debuggt und eine Reihe von Skripten optimiert, um op zu erreichen

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

JWT ist ein offener Standard, der auf JSON basiert und zur sicheren Übertragung von Informationen zwischen Parteien verwendet wird, hauptsächlich für die Identitätsauthentifizierung und den Informationsaustausch. 1. JWT besteht aus drei Teilen: Header, Nutzlast und Signatur. 2. Das Arbeitsprinzip von JWT enthält drei Schritte: Generierung von JWT, Überprüfung von JWT und Parsingnayload. 3. Bei Verwendung von JWT zur Authentifizierung in PHP kann JWT generiert und überprüft werden, und die Funktionen und Berechtigungsinformationen der Benutzer können in die erweiterte Verwendung aufgenommen werden. 4. Häufige Fehler sind Signaturüberprüfungsfehler, Token -Ablauf und übergroße Nutzlast. Zu Debugging -Fähigkeiten gehört die Verwendung von Debugging -Tools und Protokollierung. 5. Leistungsoptimierung und Best Practices umfassen die Verwendung geeigneter Signaturalgorithmen, das Einstellen von Gültigkeitsperioden angemessen.

Dieses Tutorial zeigt, wie XML -Dokumente mit PHP effizient verarbeitet werden. XML (Extensible Markup-Sprache) ist eine vielseitige textbasierte Markup-Sprache, die sowohl für die Lesbarkeit des Menschen als auch für die Analyse von Maschinen entwickelt wurde. Es wird üblicherweise für die Datenspeicherung ein verwendet und wird häufig verwendet

Eine Zeichenfolge ist eine Folge von Zeichen, einschließlich Buchstaben, Zahlen und Symbolen. In diesem Tutorial wird lernen, wie Sie die Anzahl der Vokale in einer bestimmten Zeichenfolge in PHP unter Verwendung verschiedener Methoden berechnen. Die Vokale auf Englisch sind a, e, i, o, u und sie können Großbuchstaben oder Kleinbuchstaben sein. Was ist ein Vokal? Vokale sind alphabetische Zeichen, die eine spezifische Aussprache darstellen. Es gibt fünf Vokale in Englisch, einschließlich Großbuchstaben und Kleinbuchstaben: a, e, ich, o, u Beispiel 1 Eingabe: String = "TutorialPoint" Ausgabe: 6 erklären Die Vokale in der String "TutorialPoint" sind u, o, i, a, o, ich. Insgesamt gibt es 6 Yuan

Statische Bindung (statisch: :) implementiert die späte statische Bindung (LSB) in PHP, sodass das Aufrufen von Klassen in statischen Kontexten anstatt Klassen zu definieren. 1) Der Analyseprozess wird zur Laufzeit durchgeführt.

Was sind die magischen Methoden von PHP? Zu den magischen Methoden von PHP gehören: 1. \ _ \ _ Konstrukt, verwendet, um Objekte zu initialisieren; 2. \ _ \ _ Destruct, verwendet zur Reinigung von Ressourcen; 3. \ _ \ _ Call, behandeln Sie nicht existierende Methodenaufrufe; 4. \ _ \ _ GET, Implementieren Sie den dynamischen Attributzugriff; 5. \ _ \ _ Setzen Sie dynamische Attributeinstellungen. Diese Methoden werden in bestimmten Situationen automatisch aufgerufen, wodurch die Code -Flexibilität und -Effizienz verbessert werden.
