-3

有没有办法不复制中的特定数组foreach loop?这是代码

<?php

    $letters = array("A","B","B","C");

      foreach ($letters as $char){
        if ($char == "B") {
          continue; 
        }
        echo $char;
      }

?>

我希望我的输出ABC不是AC

4

3 回答 3

2

您可以先去除非唯一元素:

foreach(array_unique($letters) AS $char)
于 2013-07-12T09:50:46.427 回答
0

试试喜欢

<?php

$letters = array("A","B","B","C");
  $letters = array_unique($letters);
  foreach ($letters as $char){        
       echo $char;
  }
?>
于 2013-07-12T09:49:35.130 回答
0

复制数组使用

$a = array("A","B","B","C");
$b = array_unique($a); // $b will be a different array with unique values

没有必要使用 foreach。在 PHP 中,默认情况下变量不是通过引用分配,而是通过值分配,除非您使用&运算符。

另一种方法是使用array_merge()

$a = array("A","B","B","C");
$b = array();
$b = array_merge(array_unique($a), $b);

在这两种情况下,结果都是A B C

于 2013-07-12T09:52:12.287 回答