PHP Trait功能與用法實例分析
本文實例講述了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-eatB-sayB-eat
2.修改訪問控制<?phptrait 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:phpdemotrait_Demo.php on line 14
更多關于PHP相關內(nèi)容感興趣的讀者可查看本站專題:《php面向對象程序設計入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《PHP基本語法入門教程》、《php字符串(string)用法總結》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。
相關文章:
1. springcloud alibaba nacos linux配置的詳細教程2. Vue為什么要謹慎使用$attrs與$listeners3. SpringBoot 使用 @Value 注解讀取配置文件給靜態(tài)變量賦值4. Java 生成帶Logo和文字的二維碼5. SpringBoot整合MybatisPlus的教程詳解6. 解決在Vue中使用axios POST請求變成OPTIONS的問題7. Spring Boot2發(fā)布調(diào)用REST服務實現(xiàn)方法8. python 實現(xiàn)圖片修復(可用于去水印)9. Android自定義控件實現(xiàn)方向盤效果10. python中的socket實現(xiàn)ftp客戶端和服務器收發(fā)文件及md5加密文件
