0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

トレイト (アウトプット)

Posted at

今日初めてトレイトを使ったからまとめとく。

#トレイトとは
PHPのバージョン5.4.0から導入されたコードの再利用性を高めるための機能。
トレイトは任意のクラスの機能(メソッド)を拡張できる仕組み。

####トレイトの定義方法

trait.php
<?php
trait Language{
    public function aiueo(){
        print 'あいうえお';
    }

    public function kakikukeko(){
        print 'かきくけこ';
    }
}

####トレイトの利用方法

human.php
<?php
require_once 'trait.php';
class Human{
    //クラスの中で宣言する
    //宣言するとトレイトの中で定義したメソッド aiueo(), kakikukeko()が使える
    use Language;
    
    public $name = '田中';
    public $age = 20;

    
    public function greet(){
        print $name . 'です。' . $age . '歳です。';
    }
}

$human1 = new Human();
//trait.phpで定義したメソッドの呼び出し
$human1->aiueo();

####答え

$ php human.php
あいうえお

継承していなくてもメソッドが使えた。

トレイト使うことで設計の幅が広がりそう。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?