Traits in PHP OOP — a practical guide to PHP traits with clear examples you can reuse in real projects.
OOP Tutorial Series (28/65). Prefer one article? Read the complete OOP tutorial.
Short description
Traits solve code reuse without multiple class inheritance. Watch for conflict resolution with `insteadof`/`as`.
Trait usage
trait HasTimestamps {
public function touch(): void { $this->updatedAt = new DateTimeImmutable(); }
}
class Post {
use HasTimestamps;
public ?DateTimeImmutable $updatedAt = null;
}