簡體   English   中英

foreach 循環執行多次

[英]foreach loop executing multiple times

我有一個數組,根據 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);
        }
    }
}

您可以使用 array_unique 函數(請參閱此處)。 您可以使用以下代碼:

 <?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);
    }
}
 }
   ?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM