首页 > 编程 > PHP > 正文

php中的trait怎么使用?(附示例)

2020-03-22 17:12:02
字体:
来源:转载
供稿:网友
自PHP5.4.0 起,PHP实现了一种代码复用的方法,称为trait。为了实际使用trait,trait和html' target='_blank'>class指定类名一样,首先需要指定trait名称,在定义的trait模块中,可以定义方法,下面我们就来看看本篇文章的详细内容。

php

创建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; // 324echo $pen- taxIncluded().PHP_EOL; // 108

本篇文章到这里就全部结束了,更多精彩内容大家可以关注php 的相关教程栏目!!!

以上就是php中的trait怎么使用?(附示例)的详细内容,PHP教程

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表