Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.09.2011, 01:18   #1
bush007
Форумчанин
 
Аватар для bush007
 
Регистрация: 10.02.2009
Сообщений: 226
По умолчанию исключить из массива несколько значений

Добрый час, камрады
Пытаюсь динамически создать select(список, как год рождения, число месяца и т.д. на сайтах при регистрации), с исключением некоторых value.
Задача такова:
При создании списка нужно исключить пару значений.
Если просто идти по возрастающей, то получится select типа
1 2 3 4 5 6 7 8 9 10 11 12 13 14.
мне надо исключить из этого списка например два значения, в этом примере я исключаю два селекта, 7 и 8, чтобы получился список такой:
1 2 3 4 5 6 9 10 11 12 13 14
PHP код:
<select class="input" type=text name=slot>
<?php
$slot 
1;
for (
$i 0$i <= 6$i++)//сформируем select от 1 до 6,
{
  
$new_slot $slot $i;
  echo 
'<option value='.$new_slot.'>'.$new_slot.'</option>';
}
for (
$i 9$i <=14$i++)// а потом добавим еще select от 9 до 14
{
  
$new_slot $slot $i;
  echo 
'<option value='.$new_slot.'>'.$new_slot.'</option>';
}
?>
</select>
----------------------------------
оно конечно работает правильно, но как то уж некрасиво выглядит.
Дело в том, что селектов может быть до сотни, а вручную их копипастить в страничку некошерно уж совсем.
Не сочтите за труд подсказать более изящное решение.
следи за собой. Будь осторожен.
Не забывай свой первый "hello world".
bush007 вне форума Ответить с цитированием
Старый 05.09.2011, 01:36   #2
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Можно так:
PHP код:
$except = array(789); // числа-исключения
for($i 1$i <= 14$i++){
    if(!
in_array($i$except)) echo $i' ';
}
// выведет все числа, кроме 7, 8, 9 
Andkorol вне форума Ответить с цитированием
Старый 05.09.2011, 01:41   #3
bush007
Форумчанин
 
Аватар для bush007
 
Регистрация: 10.02.2009
Сообщений: 226
По умолчанию

спасибо за быстрый ответ!
Сейчас попробую подкрутить под свою задачу.
следи за собой. Будь осторожен.
Не забывай свой первый "hello world".
bush007 вне форума Ответить с цитированием
Старый 05.09.2011, 01:54   #4
bush007
Форумчанин
 
Аватар для bush007
 
Регистрация: 10.02.2009
Сообщений: 226
По умолчанию

Во! Просто отлично!
Код:
<select class="input" type=text name=slot><!--здесь делаем селект -->
	<?php
		$except = array(8, 9, 13); // числа-исключения
			for($i = 1; $i <= 14; $i++){	
			if(!in_array($i, $except)) 
			echo '<option value='.$i.'>'.$i.'</option>';
			}
?>
<select/>
Спасибо, Andkorol!
следи за собой. Будь осторожен.
Не забывай свой первый "hello world".
bush007 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Несколько значений одной ячейки Larryes Microsoft Office Excel 3 02.12.2010 13:30
Как корректно исключить несколько классов из ClassType? SkAndrew Общие вопросы Delphi 6 31.03.2010 22:05
Как в MsgBox, выводить несколько значений valerij Microsoft Office Excel 12 22.03.2010 23:17
сцепить несколько динамических значений StasSv Microsoft Office Excel 0 22.10.2008 12:20