自PHP5.4.0 起,PHP實作了一種程式碼重複使用的方法,稱為trait。為了實際使用trait,trait和class指定類別名稱一樣,首先需要指定trait名稱,在定義的trait模組中,可以定義方法,下面我們就來看看本篇文章的詳細內容。
建立trait所需的任務是就是上面的「確定trait名稱」定義所需方法」。
我們來看看trait的使用方法
trait的定義
trait 特征名{ function 方法名1() { } function 方法名2() { } }
trait的使用
class 类名 { // 这使得类与定义方法1和方法2的状态相同 use trait名; }
具體的範例
在下面的程式碼中,我們準備了這個book類和pen類,並且在這兩個類別中都有一個計算價格的過程,包括共同的稅,所以我們用trait定義了這個過程。
我認為可以透過簡單地編寫「use TaxCalculator;」來說明可以使用含稅計算功能。
如果在book類別/ pen類別中定義了此值,則要寫入的程式碼量會增加,並且在進行修正時必須修改這兩個類別。
使用trait會減少程式碼量,即使發生修復,可維護性也很高,因為它只需要修復TaxCalculator。
// 税的计算处理 trait TaxCalculator { private $price; // 价格 private $tax = 0.08; // 税收 // 返还含税的价格 public function taxIncluded() { return $this->price * (1 + $this->tax); } } // 表示book类的信息 class Book { use TaxCalculator; public $title; // 标题 public $author; // 作者 public function __construct($price, $title, $author) { $this->price = $price; $this->title = $title; $this->author = $author; } } // 表示pen类的信息 class Pen { use TaxCalculator; public $color; // 颜色 public $type; // 自动笔或者铅笔 public function __construct($price, $color, $type) { $this->price = $price; $this->color = $color; $this->type = $type; } } // 把书和笔实例化 $book = new Book(80, ""红楼梦"", ""曹雪芹""); $pen = new Pen(10, ""black"", ""sharp""); // 输出含税的价格 echo $book->taxIncluded().PHP_EOL; // 324 echo $pen->taxIncluded().PHP_EOL; // 108
這篇文章到這裡就全部結束了,更多精彩內容大家可以追蹤php中的trait怎麼使用? (附範例)中文網的相關教學欄位! ! !
以上是php中的trait怎麼使用? (附範例)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本文討論了PHP中的crypt()和password_hash()的差異,以進行密碼哈希,重點介紹其實施,安全性和對現代Web應用程序的適用性。

文章討論了通過輸入驗證,輸出編碼以及使用OWASP ESAPI和HTML淨化器之類的工具來防止PHP中的跨站點腳本(XSS)。

自動加載PHP會在需要時自動加載類文件,從而通過減少內存使用和增強代碼組織來提高性能。最佳實踐包括使用PSR-4和有效組織代碼。

本文討論了在PHP中管理文件上傳大小的管理,重點是2MB的默認限制以及如何通過修改PHP.INI設置來增加它。

本文討論了PHP 7.1中引入的PHP中的無效類型,允許變量或參數為指定類型或NULL。它突出顯示了諸如提高可讀性,類型安全性和明確意圖的好處,並解釋瞭如何聲明

本文討論了unset()和unlink()功能在編程中的差異,重點關注其目的和用例。 unset()從內存中刪除變量,而unlink()從文件系統中刪除文件。兩者都對效率至關重要


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

SublimeText3 Linux新版
SublimeText3 Linux最新版

記事本++7.3.1
好用且免費的程式碼編輯器