PHP中如何运用Trait实现代码复用和模块化设计?
- 内容介绍
- 文章标签
- 相关推荐
本文共计382个文字,预计阅读时间需要2分钟。
本例介绍PHP中的Trait功能及其用法。分享给广大开发者参考,具体如下:
1. Trait是PHP的一种单继承特性,类似于类继承,但用于代码复用。
2.如果引入的Trait中有同名方法,会覆盖类中定义的同名方法。
示例代码:
php
trait A { public function func() { echo Trait method; }}class B { use A;
public function func() { echo Class method; }}
$b=new B();$b->func(); // 输出:Class method
本文实例讲述了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相关内容感兴趣的读者可查看本站专题:《php面向对象程序设计入门教程》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
本文共计382个文字,预计阅读时间需要2分钟。
本例介绍PHP中的Trait功能及其用法。分享给广大开发者参考,具体如下:
1. Trait是PHP的一种单继承特性,类似于类继承,但用于代码复用。
2.如果引入的Trait中有同名方法,会覆盖类中定义的同名方法。
示例代码:
php
trait A { public function func() { echo Trait method; }}class B { use A;
public function func() { echo Class method; }}
$b=new B();$b->func(); // 输出:Class method
本文实例讲述了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相关内容感兴趣的读者可查看本站专题:《php面向对象程序设计入门教程》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。

