Is it possible to have a foreach
loop in PHP with multiple "index" variables, akin to the following (which doesn't use correct syntax)?
foreach ($courses as $course, $sections as $section)
If not, is there a good way to achieve the same result?
No, because those arrays may have other number of items.
You must explicitely write something like that:
to achieve just that result you could do
but that only works for two arrays
You would need to use nested loops like this:
Of course, this will loop over every section for every course.
If you want to look at each pair, you are better off using either objects that contain the course/section pairs and looping over those, or making sure the indexes are the same and doing:
No, this is maybe one of the rare cases PHP's array cursors are useful:
What would that do, exactly? Are
$courses
and$sections
just two separate arrays, and you want to perform the same function for the values in each? You could always do:This makes all the usual assumptions about
array_merge
, of course.Or is it that
$sections
comes from$course
and you want to do something for each section in each course?like this?