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-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程序設計有所幫助。
相關文章
Linux下從零開始安裝配置Nginx服務器+PHP開發(fā)環(huán)境
這篇文章主要介紹了Linux下從零開始安裝配置Nginx服務器+PHP開發(fā)環(huán)境的教程,文中采用的是最主流的FastCGI連接方法,需要的朋友可以參考下2015-12-12
php操作redis中的hash和zset類型數據的方法和代碼例子
這篇文章主要介紹了php操作redis中的hash和zset類型數據的方法和代碼例子,本文共介紹了26組函數或方法,需要的朋友可以參考下2014-07-07

