Laravelめも
Laravelに限らずRDBでツリー構造を扱う方法はいくつかありますが、入れ子集合モデル(Nested Sets Model)が有効なようです。 CakePHPでもTreeBehaviorとして実装されています。
Laravel NestedSetとBaumが有名所のようですが、Baumは2015年からメンテされていないようなので、Laravel NestedSetが選択肢になりそうです。