从PHP foreach循环中排除ID


Exclude IDs from PHP foreach loop

我正试图从foreach循环填充的选择列表中排除多个ID:

$types = new Type();
$types->where('id !=', 13)->order_by('name')->get();
$data['types'] = $types;
<select class="styled" name="form[type_id]">
<option value="0"> - select one - </option>
<?php foreach ($types as $t): ?>
<option value="<?=$t->id?>" <?=check_selected($t->id, $i->type_id)?>><?=$t->name?></option>
<?php endforeach; ?>
<option value="13" <?=check_selected(13, $i->type_id) ?>>Other</option>
</select>

因此,目前它将排除ID 13(并手动将其添加到底部),但我如何添加更多要排除的ID?

提前谢谢。

试试这个:

...
$exclude = array(13,25);// add IDs to exlude
....
<?php foreach ($types as $t): ?>
   <?php if(!in_array($t->id, $exclude)){ ?>// if the ID is in the exlude array don't add it
      <option value="<?=$t->id?>" <?=check_selected($t->id, $i->type_id)?>><?=$t->name?></option>
   <?php } ?>
<?php endforeach; ?>
...