Всем привет) Поясните пожалуйста кто нибудь в чём отличие Трейта от функции хэлпера? На сколько я понимаю трейты служат чтобы не дублировать код, закидываем туда нужные функции и радуемся. Но с таким же успехом можно и хелперы создать и вроде результат тот же. В общем не особо понятен этот момент...
Трейт на этапе компиляции встраивается в класс, в нём можно обращаться к непубличным методам, например. Так что есть вещи, которые при помощи хелпера сделать нельзя, но они довольно специфичны и без нужды трейты лучше не использовать.