php
  • mysql
  • loops
  • while-loop
  • 2013-10-04 3 views 0 likes 
    0

    Этот мой сценарий, я хочу пропустить цикл, если значение category = "" в базе данных. Как я могу это сделать?Как разбить пропустить петлю, если значение категории = ""?

    public function display_international() { 
           $query = 'SELECT * 
         FROM 
         tourDB 
         WHERE 
         tour_type = "international"'; 
           $result = mysql_query($query) or die(mysql_error()); 
            if ($result !== false && mysql_num_rows($result) > 0) { 
             while ($i = mysql_fetch_assoc($result)) { 
               $international_cats = stripslashes($i[ 'categories' ]); 
               $international_display .= <<<PANEL_DISPLAY 
    <a class="international-tour-box-element" href=# >$international_cats</a> 
    PANEL_DISPLAY; 
             } //$b = mysql_fetch_assoc($result) 
           } //$result !== false && mysql_num_rows($result) > 0 
           else { 
             $international_display = <<<PANEL_DISPLAY 
    <a class="international-tour-box-element" href="#" >No tours !</a> 
    PANEL_DISPLAY; 
           } 
           return $international_display; 
         } 
    
    +0

    если ($ категории == «») {перерыва;} – Ashish

    +1

    Вы можете использовать либо «разрыв», чтобы разорвать петлю, или «продолжить», чтобы пропустить оставшуюся часть итерации цикла, и продолжить со следующей один. Просто добавьте if ($ ['categories'] == '') continue; чтобы пропустить оставшуюся текущую итерацию. Альтернативно добавьте if ($ ['categories'] == '') break; для полного завершения цикла. – tomahaug

    +0

    'if ($ categories == '') {} else {остальная часть ваших кодов}' – ncm

    ответ

    0

    Это моя помощь вам:

    public function display_international() { 
           $query = 'SELECT * 
         FROM 
         tourDB 
         WHERE 
         tour_type = "international"'; 
           $result = mysql_query($query) or die(mysql_error()); 
            if ($result !== false && mysql_num_rows($result) > 0) { 
             while ($i = mysql_fetch_assoc($result)) { 
              if (!$i[ 'categories' ]) { 
              continue; // use break; to terminate continue to skip loop 
              } 
               $international_cats = stripslashes($i[ 'categories' ]); 
               $international_display .= <<<PANEL_DISPLAY 
    <a class="international-tour-box-element" href=# >$international_cats</a> 
    PANEL_DISPLAY; 
             } //$b = mysql_fetch_assoc($result) 
           } //$result !== false && mysql_num_rows($result) > 0 
           else { 
             $international_display = <<<PANEL_DISPLAY 
    <a class="international-tour-box-element" href="#" >No tours !</a> 
    PANEL_DISPLAY; 
           } 
           return $international_display; 
         } 
    
    0

    Выход из цикла:

    if ($i['categories'] == '') { 
        break; 
    } 
    

    Пропустить это значение в цикле:

    while ($i = mysql_fetch_assoc($result)) { 
        if ($i['categories'] != '') { 
         // Rest of your code here 
        } 
    } 
    
    0

    Вы можете использовать перерыв, чтобы пропустить цикл или продолжить пропустить текущую итерацию.

    Например

    if($categories == "") { 
        break; //or continue; 
    } 
    
    0

    Вы можете перейти к следующему элементу в результате

    if(empty($i[ 'categories' ]) continue; 
    

    или разбить его

    if(empty($i[ 'categories' ]) break; 
    
    1

    Вы можете использовать либо "разрыв", чтобы сломать цикл или «продолжить», чтобы пропустить оставшуюся часть итерации цикла и продолжить следующую.

    Просто выполните следующие действия, чтобы пропустить остальную часть текущей итерации.

    if($['categories'] == '') continue; 
    

    В качестве альтернативы, выполните следующие действия для полного завершения цикла.

    if($['categories'] == '') break; 
    
    +0

    Sidenote: Некоторым разработчикам не нравится использование «continue». Поэтому вам следует подумать, будет ли использование if-statement лучшим решением (некоторые разработчики утверждают, что легче определить поток приложений при просмотре кода). – tomahaug

    Смежные вопросы