我有一个数组,基于我必须在不同的表中插入的id。但问题是阵列执行多次。假设我有这个id 1 3次,id 2 2次。对于id 1,总数据插入9次,对于id 2,插入4次。我缺少什么。我的代码
if (!empty($this->request->data['other_source_options'])) {
foreach ($this->request->data['other_source_options'] as $value) {
if ($value == 1) {
$this->__function_name_1(1);
}
if ($value == 2) {
$this->__function_name_2(2);
}
if ($value == 3) {
$this->__function_name_3(3);
}
if ($value == 4) {
$this->__function_name_4(4);
}
}
}
答案 0 :(得分:1)
您可以使用array_unique函数(请参阅here)。 您可以使用以下代码:
<?php
if (!empty($this->request->data['other_source_options'])) {
$arrUnique = array_unique($this->request->data['other_source_options']);
foreach ($arrUnique as $value) {
if ($value == 1) {
$this->__function_name_1(1);
}
if ($value == 2) {
$this->__function_name_2(2);
}
if ($value == 3) {
$this->__function_name_3(3);
}
if ($value == 4) {
$this->__function_name_4(4);
}
}
}
?>