What is a static method?
Not all variables and methods must be called by creating objects. You can call variables and methods directly by adding the static keyword.
The syntax format for calling static members is:
Keyword::static member
The keyword can be:
( 1) self, used when calling static members within a class.
(2) The class name where the static member is located is used when calling static members inside the class outside the class.
Note: In static methods, only static variables can be called, not ordinary variables; ordinary methods can call static variables.
Explanation of static method examples:
Static method example 1:
<?php class Math{ static function squared($input){ return $input*$input } } echo Math :: squared(3);
The running result is: 9
The above is a simple Instance, it is worth noting that in static methods, the $this keyword cannot be used, because there may be no object instance that can be referenced. Because static methods do not require instantiation of objects.
Using static members, in addition to eliminating the need to instantiate the object, another function is to still save the modified static data after the object is destroyed so that it can be used next time. This concept is relatively abstract. Let’s give an example to analyze it in detail.
Static method example 2:
<?php header("content-type:text/html;charset=utf-8"); class Play{ static $num = 0; function showNum(){ echo '这是你第' . self :: $num . '次玩LOL'; self :: $num++ ; } } $play1 = new Play(); $play1 -> showNum(); echo '<br/>'; $play2 = new Play(); $play2 -> showNum(); echo '<br/>'; echo '这是你第' . Play::$num .'次玩LOL';
In the above example, we first defined the static variable $num, and then declared a method in the class, and called the static variable in the method. The called method You can see it in the example, and then add 1 to the static variable. Instantiate the object of the class in turn, and then call the method. Next is what we said above: after the object is destroyed, the modified static data is still saved for continued use next time.
Note:
Static methods are very easy to use. There is no need to instantiate the object. The static member space is already given when the class is loaded for the first time. But nothing can be abused. Because once too many static members are declared, the space will be occupied all the time, which will affect the running speed and functions of the system, so remember: although something is good, don’t be greedy for too much!
The above is the detailed content of Use of static methods in php object-oriented. For more information, please follow other related articles on the PHP Chinese website!