这期内容当中小编将会给大家带来有关PHP之Trait功能与用法有什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
Trait 是为类似 PHP 的单继承语言而准备的一种代码复用机制。
1.如果引入的Trait有同名的方法
trait A{
public function eat(){
echo 'A-eat';
}
public function say(){
echo 'A-say';
}
}
trait B{
public function eat(){
echo 'B-eat';
}
public function say(){
echo 'B-say';
}
}
class People{
use A,B{
A::eat insteadof B;
B::eat as eatbak;
B::say insteadof A;
}
}
$people = new People();
$people->eat();
echo "<br/>";
$people->say();
echo "<br/>";
$people->eatbak();运行结果:
A-eat
B-say
B-eat
2.修改访问控制
<?php
trait Test {
public function say() {
echo 'say hello';
}
}
class People {
use Test { say as protected; }
}
$people = new People();
$people->say();运行结果:
Fatal error: Call to protected method People::say() from context '' in D:\phpdemo\trait_Demo.php on line 14
上述就是小编为大家分享的PHP之Trait功能与用法有什么了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注天达云行业资讯频道。