Heim  >  Artikel  >  Backend-Entwicklung  >  Was ist der Unterschied zwischen PHP-Konstanten und statischen Variablen?

Was ist der Unterschied zwischen PHP-Konstanten und statischen Variablen?

青灯夜游
青灯夜游Original
2021-03-31 18:15:562536Durchsuche

Unterschied: Sobald const definiert ist, kann es nicht mehr geändert werden, während durch Static geänderte Variablen geändert werden können. const kann nur Klassenattribute ändern, nicht Klassenmethoden; static kann sowohl Attribute als auch Methoden ändern.

Was ist der Unterschied zwischen PHP-Konstanten und statischen Variablen?

Die Betriebsumgebung dieses Tutorials: Windows 7 -System, PHP Version 7.1, Dell G3 Computer

Die Differenz zwischen statischen und const -Variablen in php

statischen Variablen

1. Statische Variablen können wir ändern, aber wir können keine konstanten Variablen ändern.
2. Statische statische Variablen können Berechtigungen ändern Im Körper kann nicht zugegriffen werden. Es kann nur auf die statischen Variablen und die konstanten Konstanten der Klasse zugegriffen werden.

class staticTest1 {
    var $var1 = "hello";
    public static $var2 = "hellostatic"; //public, protected, private
    const var3 = "helloconst";
    public static function displayDifferent(){
###        echo $this->$var1."<br>";//不能访问普通变量
        echo staticTest1::$var2."<br>";//可以访问类的静态变量
        echo self::var3."<br>";//不能用$this::var3, self::var3代表当前类,$this::var3代表当前对象
    }
}

//Methoden können auf zwei Arten aufgerufen werden Auf statische Variablen und Methoden kann zugegriffen werden, und self kann nur „::“ verwenden, um Mitglieder der aktuellen Klasse aufzurufen. Const-Variablen können nur Mitgliedsvariablen ändern, keine Methoden. 2. Keine Notwendigkeit um eine Änderungsberechtigung hinzuzufügen

3. Da const-Variablen zur gesamten Klasse und nicht zu einem Objekt gehören, kann auf sie nicht über Objekte zugegriffen werden Methoden Aufruf

//第一种,通过对象调用
$test1 = new staticTest1();
echo $test1->displayDifferent();
echo "<br>";
//第二种,通过类调用
echo staticTest1::displayDifferent();
echo "<br>";

Empfohlenes Lernen: „

PHP Video Tutorial

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen PHP-Konstanten und statischen Variablen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn