PHP5.4.0부터 PHP는 특성이라는 코드 재사용 방법을 구현했습니다. 실제로 특성을 사용하려면 특성이 클래스 이름과 동일해야 하며, 먼저 정의된 특성 모듈에서 메서드를 정의할 수 있습니다.
특성을 생성하는 데 필요한 작업은 위의 "특성 이름 결정"과 "필요한 방법 정의"입니다.
특성 사용법을 살펴보겠습니다. trait
특성의 정의
trait 特征名{ function 方法名1() { } function 方法名2() { } }
특성의 사용
class 类名 { // 这使得类与定义方法1和方法2的状态相同 use trait名; }
구체적인 예
아래 코드에서는 이 책 클래스와 펜을 준비했습니다. 클래스, 두 클래스 모두 공통세를 포함하여 가격을 계산하는 프로세스가 있으므로 이 프로세스를 특성으로 정의합니다.
"TaxCalculator 사용"이라고만 쓰면 세금 포함 계산 기능을 사용할 수 있다는 것을 설명할 수 있을 것 같습니다.
북 클래스/펜 클래스에 이 값을 정의하면 작성해야 하는 코드의 양이 늘어나 수정 시 두 클래스 모두 수정해야 합니다.
트레이트를 사용하면 코드량이 줄어들고, 수정이 되더라도 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 중국어 웹사이트의 관련 튜토리얼 열을 주목하세요! ! !
위 내용은 PHP에서 특성을 사용하는 방법은 무엇입니까? (예제 포함)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!