在foreach循环中调用php变量数组名

在foreach循环中调用php变量数组名,php,arrays,variables,Php,Arrays,Variables,我有以下名称的数组: $MyMondayClasses、$MyTuesdayClasses、$MyWednesdayClasses、$MyThursdayClasses、$MyFridayClasses 我有一个一周中几天的数组: $days=数组('星期一'、'星期二'、'星期三'、'星期四'、'星期五') 我想循环一周中的几天,然后运行相应的数组,但我不确定如何引用变量以确保: foreach($days as $value){ foreach($My{$value}Classes

我有以下名称的数组: $MyMondayClasses、$MyTuesdayClasses、$MyWednesdayClasses、$MyThursdayClasses、$MyFridayClasses

我有一个一周中几天的数组: $days=数组('星期一'、'星期二'、'星期三'、'星期四'、'星期五')

我想循环一周中的几天,然后运行相应的数组,但我不确定如何引用变量以确保:

foreach($days as $value){
    foreach($My{$value}Classes as $ClassKey => $ClassVar){
        some code goes here
    }
}

我曾经用eval来做这类事情,但我知道这不是最好的做法。总之,上述代码不起作用。

没有意义。。您应该使用数组,但如果您坚持,您可以尝试:

foreach ( $days as $value ) {
    $name = sprintf("My%sClasses", $value);
    if (! isset(${$name})) { // the boss asked
        continue;
    }
    foreach ( ${$name} as $ClassKey => $ClassVar ) {
        // play some ball
    }
}
我有以下名称的数组:$MyMondayClasses、$MyTuesdayClasses、$MyWednesdayClasses、$MyThursdayClasses、$MyFridayClasses

听起来不太聪明


为什么你不只需要一个数组,以“星期一”、“星期二”等作为键,然后在该键下设置每天的数据数组…?

为什么你不只需要一个将一周中的某一天传递给的类?我假设每周的天数是相似的。您是否考虑过在另一个数组中构建
$MyDAYClasses
数组,从一开始就用天数作为索引?e、 g.
classes=array('Monday'=>$MyMondayClasses),…)听起来不太聪明
听起来不太聪明。我犯了一个语法错误:-P(+1)