2017-04-21 4 views
0

Ich versuche herauszufinden, wie Sprache 10 aus der Schleife zu entfernen.Foreach überspringen Option Wert

<? foreach ($languages as $langId => $langDetails): ?> 
      <option value="<?=$langId?>" <?=($langId == zbanRegistry::getInstance()->lang) ? 'selected="selected"' : NULL;?>><?=$langDetails['LABEL']?></option>    
      <? endforeach; ?> 

und das Ergebnis ist:

<select name="lang" id="lang" > 
    <option value="1" selected="selected">Language 1</option>   
    <option value="2" >Language 2</option>   
    <option value="3" >Language 3</option>   
    <option value="4" >Language 4</option>   
    <option value="5" >Language 5</option>   
    <option value="6" >Language 6</option>   
    <option value="7" >Language 7</option>   
    <option value="8" >Language 8</option>   
    <option value="9" >Language 9</option>   
    <option value="10" >Language 10</option>      
</select> 

Jede Hilfe :-)

+0

hinzufügen einen if-Test, wenn $ langId! = 10 um Echo aus Ihrer Option Werte – clearshot66

+0

Verwendung ungesetzt Funktion http://php.net/manual/en/function.unset.php –

+0

Sie eine überspringen Iteration mit 'if ($ langId == 10) {continue; } 'am Anfang der for-Schleife – Thakkie

Antwort

0

geschätzt wird können Sie den Wert von langId überprüfen. Vielleicht so etwas?

<? foreach ($languages as $langId => $langDetails): ?> 
    <? if ($langId != 10): ?> 
     <option value="<?=$langId?>" <?=($langId == zbanRegistry::getInstance()->lang) ? 'selected="selected"' : NULL;?>><?=$langDetails['LABEL']?></option>    
    <? endif; ?> 
<? endforeach; ?> 
+1

Bitte beachten Sie, dass' Nytrix

+0

Ja, das weiß ich. Aber danke für das Hinzufügen. –

+0

Danke Benjamin. Einfachheit am besten :) – Naisus

Verwandte Themen