Мне интересно, почему PHP Trait (PHP 5.4) не может реализовать интерфейсы.
Обновление от user1460043 answer = > ... не может потребовать класс, который использует его для реализации определенного интерфейса
Я понимаю, что это может быть очевидно, потому что люди могут подумать, что если Class A использует Trait T, который реализует interface I, чем Class A должен использовать interface I непрямо (и это не так, потому что Class A может переименовывать методы trait).
В моем случае моя черта - это вызов методов из интерфейса, который реализует класс, использующий свойство.
Эта черта на самом деле является реализацией некоторых методов интерфейса. Итак, я хочу "разработать" в коде, что каждый класс, который хочет использовать мой признак, должен реализовать интерфейс. Это позволило бы Trait использовать методы класса, определенные интерфейсом, и быть уверенным, что они существуют в классе.