The previous article introduced to you "How to use session in session control in PHP? 》, this article continues to introduce PHP advanced syntax to you - what is trait? How do we use it? What are his characteristics? It has certain reference value. Friends in need can refer to it. I hope it will be helpful to everyone.
PHP Advanced Syntax-trait
1. trait (trait)
Trait is used to simulate the implementation of multiple inheritance
instance: instance
The definition of trait must start with the trait keyword, and then the writing method inside is exactly the same as the writing method of the class
Normally, we do not add member attributes to traits, only member methods
trait cannot be instantiated
Let’s verify it, let’s take the following code as an example: Based on the following code Add this code:
<?php trait linhuiyin { function pome1() { echo '你是我种下的前因,我又是谁的果报 <br/>'; } }
$d = new linhuiyin();
We will find an error, the code display results are as follows:
Therefore we cannot instantiate the trait. This is also one of its characteristics;
If the method in the trait is to be used by (subclasses), the method must be public
Our code below is public by default;
Traits can nest traits
Method name conflict
use Dun,Sword { Dun: :attack insteadof Sword; Dun: :attack as DunAttack; Sword: :attack as Sattack; }
We create a new folder and define two classes in the file, code demonstration As follows:
<?php trait linhuiyin { function pome1() { echo '你是我种下的前因,我又是谁的果报 <br/>'; } } trait zhangailing { function pome2( ) { echo '于千万人之中,遇见你要遇见的人。
'; } } class poet { use linhuiyin; } $gailun = new poet(); $gailun->pome1();
The results are displayed as follows:
Recommended learning: "PHP Video Tutorial"
The above is the detailed content of PHP advanced syntax-what is trait? How do we use it? What are his characteristics?. For more information, please follow other related articles on the PHP Chinese website!