Recorrer la matriz JSON dentro de una matriz

Anteriormente estaba usando un bucle foreach para acceder a los datos en mi objeto JSON, pero ahora he anidado una matriz dentro de una matriz. Aquí está mi JSON

{
  "name": "Takeaway Kings",
  "menu": [
    {
      "starter": [
        {
          "name": "Samosas",
          "price": 3.5
        },
        {
          "name": "Chaat",
          "price": 1.99
        }
      ]
    },
    {
      "dessert": [
        {
          "name": "Kulfi",
          "price": 2.5
        },
        {
          "name": "Kheer",
          "price": 2.99
        }
      ]
    },
    {
      "main": [
        {
          "name": "Lamb Biryani",
          "price": 4.5
        },
        {
          "name": "Chicken Tikka Masala",
          "price": 5.99
        }
      ]
    }
  ]
}

Estoy tratando de recorrer cada matriz dentro del menú y luego recorrer lo que hay en cada matriz anidada.

Anteriormente estaba usando esto para generar datos antes de cambiar el diseño de JSONObject.

<?php foreach($restaurant->menu->starter as $starter){
               echo '<h3>'.$starter->name.'</h3><br><p>'.$starter->price.'</p><br>'; 

           } ?>