Hallo zusammen!
Ich habe vermutlich ein einfach zu lösendes Problem:
Ich habe folgendes Array:
Ich habe eine Funktion geschrieben, die durch dieses Array iterieren soll und die values in ein neues Array schreiben soll:
aber ich bekomme immer ein "Invalid argument supplied for foreach()."
Warum? Habe ich mit
der Schleife kein Array übergeben? Mit meinem Beispiel von oben müsste $arr bei $x==0 doch so aussehen:
, oder?
Hat jemand einen Hinweis für mich, was ich hier falsch mache?
mfg,
bub
Ich habe vermutlich ein einfach zu lösendes Problem:
Ich habe folgendes Array:
Code:
Array ( [0] => Array ( [_10-12] => Array ( [student] => Peter Hasenberger ) ) [1] => Array ( [_8-10] => Array ( [student] => Hans Paulmann ) ) [2] => Array ( [_10-12] => Array ( [student] => David Hasselhoff 612344566 ) ) [4] => Array ( [_9-12] => Array ( [student] => Bugs Bunny 935123331 ) ) )
PHP-Code:
function matsperlevel($array, $level){
$i = count($array);
$timeTable = array(
"eightToTen"=>array(),
"nineToEleven"=>array(),
"tenToTwelve"=>array(),
"elevenToThirteen"=>array(),
"twelveToFourteen"=>array(),
"eightToEleven"=>array(),
"nineToTwelve"=>array(),
"tenToThirteen"=>array(),
"elevenToFourteen"=>array(),
"twelveToFifteen"=>array()
);
//$test = $array[1]["_8-10"]["student"];
//echo $test; FUNKTIONIERT
if ($i < 2){
echo "Nur ein Schueler";}
else {
for($x = 0; $x <= $i; $x++)
{
$arr = $array[$x];
foreach ($arr as $key) {
switch ($key){
case "_8-10":
$timetable["eightToTen"][] = $arr[$key]["student"];
break;
case "_9-11":
$timetable["nineToEleven"][] = $arr[$key]["student"];
break;
case "_10-12":
$timetable["tenToTwelve"][] = $arr[$key]["student"];
break;
case "_11-13":
$timetable["elevenToThirteen"][] = $arr[$key]["student"];
break;
case "_12-14":
$timetable["twelveToFourteen"][] = $arr[$key]["student"];
break;
case "_8-11":
$timetable["eightToEleven"][] = $arr[$key]["student"];
break;
case "_9-12":
$timetable["nineToTwelve"][] = $arr[$key]["student"];
break;
case "_10-13":
$timetable["tenToThirteen"][] = $arr[$key]["student"];
break;
case "_11-14":
$timetable["elevenToFourteen"][] = $arr[$key]["student"];
break;
case "_12-15":
$timetable["twelveToFifteen"][] = $arr[$key]["student"];
break;
}
}
}
}
echo "<pre>";
echo $timetable;
echo "</pre>";
}
Warum? Habe ich mit
$arr = $array[$x];
der Schleife kein Array übergeben? Mit meinem Beispiel von oben müsste $arr bei $x==0 doch so aussehen:
Code:
( [_10-12] => Array ( [student] => Peter Hasenberger )
Hat jemand einen Hinweis für mich, was ich hier falsch mache?
mfg,
bub
Kommentar