如果你是個PHP新手,或者你是個資深的PHP程式設計師,你可能聽過Trait,但有的朋友可能不知道它們是做什麼的,為什麼需要它們…
幸運的是,Trait比你想像的要簡單得多。
那麼,這些所謂的Trait是什麼呢?
Trait就是包含方法的類別。這個Trait可以與許多類別共用。使用這個trait的所有類別都可以使用trait方法。
為什麼你可能想要使用一個Trait?
可能有很多原因可以讓你希望使用某個特性。例如,我們有一個函數需要在整個專案中使用。我們總是可以建立一個全域函數或是我們可以將這個函數(方法)包含在一個trait中。然後我們需要使用這個方法的任何地方,我們都可以使用這個特徵,那個方法就可以供我們使用。
看看下面這些trait:
trait Greeting{ public function sayHello($name){ return 'Hello ' . $name; }}
現在我們可以在任何類別中使用這個trait :
class Post{ use Greeting;}class Page{ use Greeting;}
由於我們在上面的兩個類別中都使用了這個特性,現在我們可以在兩個實例中存取sayHello方法:
$post = new Post; echo $post->sayHello('Bob'); $page = new Page; echo $page->sayHello('Frank');
因此,如果你發現自己受到PHP中的單一繼承的限制,這意味著類別只能從另一個類別繼承,那麼你可能想要使用trait。
以上是什麼是PHP Trait的詳細內容。更多資訊請關注PHP中文網其他相關文章!