Home >Backend Development >PHP Problem >What is the difference between const and static in php

What is the difference between const and static in php

王林
王林Original
2021-03-09 17:48:113703browse

The difference between const and static in php: 1. const can only modify the attributes of a class, while static can modify properties and methods; 2. Once const is defined, it cannot be changed, but variables modified by static can be changed; 3. Const does not require variable symbols, but static does.

What is the difference between const and static in php

The operating environment of this article: windows10 system, php 7.3, thinkpad t480 computer.

The differences and connections are analyzed as follows:

1. const is a constant in the class, and define is used outside the class to define the constant.

2. Const can only modify the attributes of the class, but not the methods of the class. Static can modify properties and methods.

3. Both const and static belong to the class itself, not to the class instance after new. Use self:: to access within the class, and use classname:: to access outside the class. $this within the class refers to the class instance itself. Const and static belong to the class itself, so they cannot be accessed with $this.

4. self::NAME refers to const, self::$name refers to static. const is a constant and does not require a variable symbol. Variables modified by static require variables.

5. Once const is defined, it cannot be changed, while variables modified by static can be changed.

6. In static methods, ordinary members and methods of the class cannot be used. This is easy to understand. When calling a static method, you cannot be sure whether the class has been instantiated. Static attributes and static methods can be used in ordinary methods of a class.

Related recommendations: php video tutorial

The above is the detailed content of What is the difference between const and static in php. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn