I think this would be easier if you were using Eloquent models for your menu items as you could load the submenu items.
// Menu Model
class Menu extends Model
{
public function submenu()
{
return $this->hasMany(SubMenu::class);
}
}
// SubMenu Model
class SubMenu extends Model
{
public function menu()
{
return $this->belongsTo(Menu::class);
}
}
// Where ever you want your menu
public function menu()
{
$menu = Menu::all()->load('submenu');
return view('products.show.menu',compact('menu'));
}
Then your view will be something like this:
<ul>
@foreach($menu as $item)
<li>
<a href="{{$item->url}}">{{$item->menu_name}}</a>
@if ($item->submenu->count())
<ul>
@foreach ($item->submenu as $subitem)
<li><a href="{{$subitem->url}}">{{$subitem->menu_name}}</a></li>
@endforeach
</ul>
@endif
</li>
@endforeach
</ul>