Heim > Artikel > Backend-Entwicklung > Unterschied zwischen const, static, public, privat und protected in PHP
const: Definieren Sie Konstanten, die nach der Definition im Allgemeinen nicht geändert werden können.
statisch: statisch, auf den Klassennamen kann zugegriffen werden.
öffentlich: bedeutet global, auf die Unterklassen innerhalb und zugegriffen werden kann außerhalb der Klasse;
privat: bedeutet privat und kann nur innerhalb dieser Klasse verwendet werden;
geschützt: bedeutet geschützt, auf das nur von dieser Klasse oder einer Unterklasse oder einer übergeordneten Klasse zugegriffen werden kann; definierte Konstanten sind ebenfalls verfügbar" define"define.
Bei der Definition von Konstanten gibt es die folgenden Unterschiede zwischen const und define:
1. const wird für Klassenmitgliedsvariablen verwendet und kann nach der Definition nicht geändert werden Wird für Klassenmitgliedsvariablen verwendet.
const kann in Klassen verwendet werden, define nicht. 2. Bei den durch const definierten Konstanten wird die Groß-/Kleinschreibung beachtet, und define kann über den dritten Parameter angeben, ob die Groß-/Kleinschreibung beachtet wird (TRUE bedeutet, dass die Groß-/Kleinschreibung nicht berücksichtigt wird).
Definieren Sie eine Konstante zur Laufzeit. define('TXE',100,TRUE);
3. const kann keine Konstanten in bedingten Anweisungen definieren, die Funktion define jedoch. if($a>10){define('LE','hello');}
class Demo { //定义常量【自php5.3后】,一个常量是属于一个类的,而不是某个对象的 //不可改变的 const EVENT = 'const'; static $event = 'static'; public $eventPublic = 'public'; private $eventPrivate = 'private'; protected $eventProtected = 'protected'; public function test() { //使用self访问类中定义的常量 echo self::EVENT.'<br/>'; //同常量一样使用self echo self::$event.'<br/>'; //公共变量,受保护的变量,私密的变量通过$this访问 echo $this->eventPublic.'<br/>'; //受保护的和私密的变量只能在当前类中访问 echo $this->eventPrivate.'<br/>'; echo $this->eventProtected.'<br/>'; } //魔术方法 public function __get($name) { return $this->$name; } } class One extends Demo { public function testOne() { //可继承父级使用parent访问 echo parent::EVENT.'<br/>'; echo parent::$event.'<br/>'; //也可通过父类直接访问 echo Demo::EVENT.'<br/>'; echo Demo::$event.'<br/>'; //继承父级中的成员变量后,只能访问公共变量 //私有变量和受保护的变量不能在子类中访问 echo $this->eventPublic; } } $obj_1 = new Demo; $obj_1->test(); echo "=================<br/>"; $obj = new One; $obj->testOne();
const static public private protected ================= const static const static public
Das obige ist der detaillierte Inhalt vonUnterschied zwischen const, static, public, privat und protected in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!