-1

我想在 for-each 循环或您建议的任何其他方式中循环一个数组变量。并且当一个数组有两个或多个相同的项目/值循环时,循环应该跳过数据并继续下一个数据。

$users = array ( array('user1', id , email),
                 array('user2', id , email),
                 array('user3', id , email),
                 array('user4', id , email)

foreach ($users as $key) {

  // do something for each user
  // if from arrays user1 , user2 , user3 , user4 there are some identical data .. 
  // skip that user and continue with another user 
  // then return results and number of users skipped          
}

示例:如果数组 $users user1 的电子邮件地址/id 与 user3 相同,则跳过 user3 并继续使用 user4

希望你明白我的意思,因为我的英语不太好

4

1 回答 1

0

一种简单的方法是将到目前为止出现的所有电子邮件地址放入另一个数组中,并检查当前电子邮件是否已经在其中:

$email_addresses_processed_so_far = array();
foreach ($users as $key) {
  if(in_array($key[2], $email_addresses_processed_so_far)) {
    continue;
  }
  $email_addresses_processed_so_far[] = $key[2]; // put email address into array
  // additional processing here
  // …
}
于 2013-10-17T09:49:35.633 回答