Traitと継承元で同一メソッドがあたっときどちらが優先されるかのメモ
PHP 7.2 の環境です
Traitと継承元で同一メソッドがあたっとき、Trait のメソッドのほうが優先されるようです
<?php trait Runnable { function run() { echo __METHOD__ . "\n"; } } class Human { function run() { echo __METHOD__ . "\n"; } } class Female extends Human { use Runnable; } class Male extends Human { use Runnable; function run() { return parent::run(); } } $female = new Female(); $female->run(); //-> Runnable::run $male = new Male(); $male->run(); //-> Human::run