Php 如何从foreach循环中删除重复项
我有一个foreach循环,我在select中使用它从数据库中获取选项。但是我得到了很多复制品。这是我的密码Php 如何从foreach循环中删除重复项,php,Php,我有一个foreach循环,我在select中使用它从数据库中获取选项。但是我得到了很多复制品。这是我的密码 <select id="selectid" name="selectOrdre_nummer" class="select custom-select col-md-1" onchange="callthis();"> <option default disabled>-- select an option --</option> <
<select id="selectid" name="selectOrdre_nummer" class="select custom-select col-md-1" onchange="callthis();">
<option default disabled>-- select an option --</option>
<option value=""> None </option>
<!---------------------------------------------------------------------->
<?php foreach ($csv->getGodOrdre_nummerTable() as $select) { ?>
<option class="option" value="<?= $select->Ordre_nummer ?>"><?= $select->Ordre_nummer ?></option>
<?php } ?>
<!------------------------------------------------------------------------>
</select>
这是我尝试过的一次尝试,但没有任何运气:
<script>$("select .option").val(function(idx, val) {
$(this).siblings('[value="'+ val +'"]').remove();
});
</script>
我们也尝试过这样做:
<?php foreach ($csv->getGodVarenummerTable() as $select) {
$varenummer = json_decode(json_encode($select->Varenummer), True);
array_unique($varenummer);
?>
<option class="option" value="<?= $varenummer?>"><?= $varenummer ?></option>
<?php } ?>
感谢您的帮助 您可以使用内置函数array_unique来创建一个新的唯一值数组,基本上删除重复项
<select id="selectid" name="selectOrdre_nummer" class="select custom-select col-md-1" onchange="callthis();">
<option default disabled>-- select an option --</option>
<option value=""> None </option>
<!---------------------------------------------------------------------->
$unique_array = array_unique($csv->getGodOrdre_nummerTable());
<?php foreach ($unique_array as $select) { ?>
<option class="option" value="<?= $select->Ordre_nummer ?>"><?= $select->Ordre_nummer ?></option>
<?php } ?>
<!------------------------------------------------------------------------>
</select>
在进行此项工作时,您可能希望对查询进行优化,在查询点仅选择唯一的值,因此返回的数据较少。不知道DISTINCT是如何工作的。答案就在这里
public function getGodOrdre_nummerTable()
{
return $this->db->toList("SELECT DISTINCT Ordre_nummer FROM `Angle`");
}
数组_unique?在查询中使用group by,向我们显示您的查询如果您从数据库中获得了选项,为什么不在查询中使用DISTINCT?非常感谢!您尝试使用array_unique时,首先关注的是错误的数据元素-它不是包含重复项的$select,而是$csv->getGodVarenummerTable的结果