Включить многомерный массив

Я пытаюсь сделать переключатель на многомерном массиве:

$types = array (
'type1' => array('value1', 'value2'),
'type2' => array('value3', 'value4');
...
);

$prefix = substr($number, 0, 4);

foreach ($types as $key => $values) {
switch ($prefix) {
case 'type1' :
$type = 'TYPE1';
break;
case 'type2' :
$type = 'TYPE2';
break;
...
}
}

Где префикс $ равен значению в массиве $ types.

Но это не сработало. Я думаю, что я близок к решению, но не могу найти его (Google дал мне больше ничего). Спасибо (:

0

Решение

Я не уверен, чтобы понять.
Если $prefix знак равно 'value1' или же 'value2' или же 'value3' …. вы можете попробовать что-то вроде этого:

foreach ($types as $key => $values) {
if (in_array($prefix, $values) )
$type = strtoupper($key);
}
0

Другие решения

У вас нет $prefix в этом коде.
Попробуй это:

$types = array (
'type1' => array('value1', 'value2'),
'type2' => array('value3', 'value4')
);foreach ($types as $key => $values) {
switch ($key) { // $prefix does not exist (at least not according to this code).
case 'type1' :
$type = 'TYPE1';
break;
case 'type2' :
$type = 'TYPE2';
break;
}

}
0

По вопросам рекламы [email protected]