Die Beispiele in diesem Artikel beschreiben die Verwendung von statischen und konstanten Schlüsselwörtern in PHP. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:
Die durch das Schlüsselwort static in der Klasse beschriebenen Mitgliedseigenschaften und Mitgliedsfunktionen sind alle statisch.
Statische Mitglieder können den externen Zugriff einschränken, da statische Mitglieder zur Klasse und nicht zu einer Objektinstanz gehören.
Aus Speichersicht wird das Objekt im „Heapspeicher“ abgelegt, der Verweis auf das Objekt wird im „Stapelspeicher“ abgelegt und die statischen Mitglieder werden im statischen Initialisierungssegment abgelegt. Kann von allen Objekten im Speicher gemeinsam genutzt werden. Wie in der folgenden Abbildung gezeigt:
<?php class Person{ public static $myCountry = "中国"; public static function say(){ echo "我的祖国是:".self::$myCountry."<br>"; } } //输出静态属性 echo Person::$myCountry."<br>"; //调用静态方法 Person::say(); //修改静态属性 Person::$myCountry = "中国-江苏"; echo Person::$myCountry."<br>"; ?>
Das Ausgabeergebnis ist:
中国 我的祖国是:中国 中国-江苏
Statische Methoden in einer Klasse können nur auf statische Eigenschaften von zugreifen die Klasse. Statische Methoden in einer Klasse können nicht auf nicht statische Mitglieder der Klasse zugreifen. Wir verwenden self, um auf statische Eigenschaften in einer Klasse zuzugreifen. self ist diesem ähnlich, außer dass self die Klasse darstellt, in der sich die statische Methode befindet. Dies ist ähnlich, außer dass self die Klasse darstellt, in der sich die statische Methode befindet. Dies bezieht sich auf den Zeiger, der das Objekt darstellt, das diese Methode aufruft . Statische Methoden werden nicht mit Objekten aufgerufen, daher gibt es keinen Verweis darauf. Es gibt keinen Hinweis darauf. Ohne dies gibt es keine Möglichkeit, andere Mitgliedseigenschaften in der Klasse aufzurufen.
const ist ein Schlüsselwort, das Konstanten definiert. Const wird häufig zum Definieren von Konstanten in Klassen verwendet. Die Zugriffsmethode für mit „const“ geänderte Mitgliedsattribute ähnelt der Zugriffsmethode für mit „static“ geänderte Mitglieder. Sie verwenden auch den „Klassennamen“ und das Schlüsselwort „self“ in der Methode. Sie müssen jedoch nicht das Symbol „$“ verwenden und können nicht über Objekte darauf zugreifen.
<?php class MyClass{ const constant = 'constant value'; function showConstant(){ //方法中调用常量,没有$ echo self::constant."<br>"; } } //类直接调用,没有$ echo MyClass::constant."<br>"; $class = new MyClass(); $class ->showConstant(); ?>
Ich hoffe, dass dieser Artikel für alle hilfreich ist, die sich mit PHP-Programmierung befassen.
Weitere Artikel zur Analyse der Verwendung von statischen und konstanten Schlüsselwörtern in PHP finden Sie auf der chinesischen PHP-Website!