I wrote a code to parse through something, dynamically making an array out of the array keys of one array. This is from a form, so the odd key has a value, and that is somehow the problem.
My code:
//array values are not needed in my code, just junk rather
$array = array('one_a'=>2, 'three_b', 'four_c', 'five_d'=>12);
$number = array();
$letter = array();
foreach($array as $element) {
$parts = explode("_", $element);
$number[] = $parts[0];
$letter[] = $parts[1];
}
print_r($number);
I do not get how this could go wrong, but when the foreach()
iterates through the associative array, it reads "2" and "12" as separate array keys! This ruins my $explode
code and throws an error, as "2" has no _
in it.
Why does the associative array fail like this? I tried explicitly defining as $element => $value
, NOT using $value (to try to ignore it), but it throws even more errors.