Forum Webscript.Ru
Программирование => PHP => Тема начата: Enemy от 27 Октября 2002, 14:57:48
-
типа как есть масив напр.
$month = array(1 => "Jan", 2 => "Feb", 3 => "Mar", 4 => "Apr", 5 => "May", 6 => "Jun", 7 => "Jul", 8 => "Aug", 9 => "Sep", 10 => "Oct", 11 => "Nov", 12 => "Dec");
беру дату:
$selected = date ("M"); //возвращает "Oct"
Теперь мне нужно узнать номер елемента $selected в масиве... Можно конечно перебором, но может есть нужная функция? Я не нашел...
-
а может
$month[intval(date("m"))]
или
$month[intval(date("m"))+1]
-
$selected=date("n");
-
rembo Спасибо. Но это был ответ на текущую ситуацию, когда масив дат.
А если там любые данные, или в перемешку, короче:
//так можно узнать номер елемента в массиве
$num = array_keys ($month, date("M"));
$selected = $num[0];
-
array_flip($month);
P.S.
Ясно дело что ограничения есть (см. manual), но элегантней твоего вычитанного ;)
$month = array(1 => "Jan", 2 => "Feb", 3 => "Mar", 4 => "Apr", 5 => "May", 6 => "Jun", 7 => "Jul", 8 => "Aug", 9 => "Sep", 10 => "Oct", 11 => "Nov", 12 => "Dec");
$result = array_flip($month);
// что ты получишь?
echo $result["Nov"];
-
Enemy
в массивах нет номеров.
так что, узнавать нечего.
Если тебе нужен номер, то, значит, ты просто поставил себе неправильную задачу.