За последние 24 часа нас посетили 18587 программистов и 1665 роботов. Сейчас ищут 969 программистов ...

if и switch

Тема в разделе "PHP для новичков", создана пользователем shalx, 29 окт 2014.

  1. shalx

    shalx Новичок

    С нами с:
    15 фев 2014
    Сообщения:
    110
    Симпатии:
    0
    Привет
    Нужно перевести конструкцию if на switch , документацию прочитал но не нашол примеров которые подошли бы , покажите пожалуйста пример или исправьте код
    Код (Text):
    1. if ($aaa !==0 && $deb !==0 && $kre !==0){
    2. $Rows = $DB->Query("SELECT * FROM `t_table` WHERE ricxvi = '{$aaa}' AND debeti = '{$deb}' AND krediti = '{$kre}'");
    3. }
    4. elseif ($aaa ==0 && $deb !==0 && $kre !==0){
    5. $Rows = $DB->Query("SELECT * FROM `t_table` WHERE debeti = '{$deb}' AND krediti = '{$kre}'");
    6. }
    7. elseif ($aaa !==0 && $deb ==0 && $kre !==0){
    8. $Rows = $DB->Query("SELECT * FROM `t_table` WHERE debeti = '{$aaa}' AND krediti = '{$kre}'");
    9. }
    10. elseif ($aaa !==0 && $deb !==0 && $kre ==0){
    11. $Rows = $DB->Query("SELECT * FROM `t_table` WHERE ricxvi = '{$aaa}' AND debeti = '{$deb}'");
    12. }
    13. elseif ($aaa !==0 && $deb ==0 && $kre ==0){
    14. $Rows = $DB->Query("SELECT * FROM `t_table` WHERE ricxvi = '{$aaa}'");
    15. }
    16. elseif ($aaa ==0 && $deb !==0 && $kre ==0){
    17. $Rows = $DB->Query("SELECT * FROM `t_table` WHERE debeti = '{$deb}'");
    18. }
    19. elseif ($aaa ==0 && $deb ==0 && $kre !==0){
    20. $Rows = $DB->Query("SELECT * FROM `t_table` WHERE krediti = '{$kre}'");
    21. }
     
  2. metadon

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

    С нами с:
    6 фев 2006
    Сообщения:
    779
    Симпатии:
    0
    Можно все варианты сравнения свести к одной переменной и уже использовать в switch
     
  3. shalx

    shalx Новичок

    С нами с:
    15 фев 2014
    Сообщения:
    110
    Симпатии:
    0
    Покажи примерчик plz
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Тут не свич нужен.
     
  5. runcore

    runcore Старожил

    С нами с:
    12 окт 2012
    Сообщения:
    3.625
    Симпатии:
    158
    такие вещи делаются примерно так
    Код (PHP):
    1. $sql = "SELECT * FROM `t_table` ";
    2. $where = array();
    3. if ($aaa !== 0) { $where[] = " ricxvi = '{$aaa}' "; }
    4. if ($deb !== 0) { $where[] = " debeti = '{$deb}' "; }
    5. if ($kre !== 0) { $where[] = " krediti = '{$kre}' "; }
    6. $sql .= join(' AND ', $where );
    7. $Rows = $DB->Query( $sql );