The differences between php instance methods are: 1. Static methods do not require new, while instance methods require new; 2. Non-static properties cannot be called in static methods; 3. Static methods have only one copy in memory, and Resources are shared within a PHP life cycle, and instance methods may have multiple copies in memory.
Recommended: "PHP Video Tutorial"
The difference between php static methods and instance methods
In PHP object-oriented programming, we often come into contact with classes and methods. What is the difference between static methods and instance methods (non-static methods)? How to choose and apply more appropriately? Please see the comparison below:
Difference point | Static method (static) | Instance method |
Calling | does not require new, class name::method name. For example: 1User::find();Note: Non-static properties cannot be called in static methods. |
Requires new. For example: 12$userObj = new User;$userObj->find(); |
Only in memory One copy, within a PHP life cycle, resources are shared. | Note: Static methods and properties are loaded as the class is loaded, so too many static methods will consume more memory. | Every new time, an independent space will be opened, that is, there will be multiple copies in the memory. |
Direct call, no need to open space and other operations, better in terms of time and efficiency | It takes some time to open space, etc. Operation | |
Sharing the same space and the same data, so in some scenarios it is more suitable to use static methods | Multiple instances are not shared Same space and data | |
is not supported | is supported. For example: 1$userObj->fields('uid')->where('uid>0')->find(); |
The above is the detailed content of What is the difference between php instance methods. For more information, please follow other related articles on the PHP Chinese website!