What are Traits?
Traits
are simply the way to share methods among classes in your application while keeping an equal eye on DRYing up code
and making sure its re-usability in the application.
In this article, we'll go through the problem and then look at how using Traits can solve it for us.
User Classes
Let's assume, we want to create an admin panel along side the basic users functionality as well. So basically, we would have a couple of classes to start with.
class User { } class Admin { }
These classes
might share a couple of methods
but on the same side might not share all of them. To tackle this type of problem, we'll create a Trait
like so
trait Authenticatable { //List of Methods }
And to use methods from this Trait, we'll simple use the use
keyword,
class User { use Authenticatable; }
Well that's it. Its this simple to DRY
up your application's code-base using traits.
To understand the difference between the Interfaces
and Traits
in PHP
, you can check the below link.
Final Words
Traits are important part of PHP application as PHP doesn't support multiple inheritances. Traits comes to the rescue and lets you share methods between classes with ease.
If you've any suggestions or feedback, do write us a comment below. You can also follow us on Twitter.