トレイトについて その5
2016/1/20 10:48
※この記事は読者によって投稿されたユーザー投稿です:
- 編集部の見解や意向と異なる内容の場合があります
- 編集部は内容について正確性を保証できません
- 画像が表示されない場合、編集部では対応できません
- 内容の追加・修正も編集部では対応できません
ヒューマンリソシア株式会社はコラム「トレイトについて その5」を公開しました。
前回に引き続き、実際のコードでtraitをより深く理解してきましょう。
まずは「2つのtrait」です。これは普通に書く事ができます。
trait hoge {
public function ho() {
echo "function ho\n";
}
}
trait foo {
public function oo() {
echo "function oo\n";
}
}
class bar {
use hoge, foo;
}
//
$obj = new bar();
$obj->ho();
$obj->oo();
useを2行(以上)にしてもよいのですが(エラーは出ません)、複数のtraitを使う場合、
カンマ区切りで連続して記述することもできます。
書き方はどちらでもよいようなのですが、PHPの公式のマニュアルの書き方だと、
どちらかというと「カンマ区切りで連続して記述」を推しているようにも見受けられますので、
ちょっとだけ意識をしておいてもよいでしょう。
では、trait同士で「メソッド名がぶつかってしまった場合(名前の衝突)」はどうなるのでしょうか?
この続きは以下をご覧ください
http://resocia.jp/column/4841/
ソーシャルもやってます!