За последние 24 часа нас посетили 49692 программиста и 1733 робота. Сейчас ищет 771 программист ...

switch...case

Тема в разделе "PHP для новичков", создана пользователем 79karelin, 18 апр 2008.

  1. 79karelin

    79karelin Активный пользователь

    С нами с:
    12 апр 2008
    Сообщения:
    22
    Симпатии:
    0
    Здравствуйтею Только начал изучать РНР и вопрос по switch-case, не пойму:

    $a = .....
    switch ($a/2)
    {
    case 100 :
    case 101 :
    case 102 : команда1; ... ; команда10; break;
    .....
    }

    а если мне надо выполнить команда1; ... ; команда10 не при $a/2 = 100...102, а при 1 ... 1000? Тысячу кэйсов что ли писать?

    В VFP, например, это просто решается:
    Do Case
    Case a/2 = 0
    команды 1
    Case BetWeen(a/2, 1, 1000)
    команды 2
    Case a/2 > 2000
    команды 3
    OtherWise
    команды 4
    EndCase
     
  2. Sergey89

    Sergey89 Активный пользователь

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
  3. JeФoks

    JeФoks Активный пользователь

    С нами с:
    16 апр 2008
    Сообщения:
    30
    Симпатии:
    0
    у меня тож вопрос по switch:

    имеется форма, там два выпадающих меню, обрабатываю данные с помощью swith () {case:...}
    сначала было одно выпадающее меню, всё работало прекрасно, потом пришлось сделать второе, на саму форму код не ругался, а вот когда я и для второго меню прописал обработчик точно такой же (параметры другие естественно), то форма перестала обрабатываться...
    Возник вопрос:
    Можно писать два цикла со switch подряд?

    Обработчики:
    PHP:
    1.  
    2. switch( $stolb )
    3.  {
    4.    case "76х3": $resultat = 642; break;
    5.    case "60х60х3": $resultat = 642; break;
    6.    case "60х40х3": $resultat = 507; break;
    7.    case "80х60х3": $resultat = 753; break;
    8.    case "60х40х1,5": $resultat = 441; break;
    9.  }
    10.  
    11. switch( $setka )
    12.  {
    13.    case "45x45x1,8": $setka_result = 46,2; break;
    14.    case "45x45x1,8-Zn": $setka_result = 53,4; break;
    15.    case "45x2x1,8-Zn": $setka_result = 56; break;
    16.  }
    17.  
    и ещё, обработчик находится на той же странице, где и форма.