Php 数组元素之间的一对一组合,无需重复

Php 数组元素之间的一对一组合,无需重复,php,arrays,Php,Arrays,如何在不重复的情况下在这些数组元素之间实现一对一的组合 对于$example1,应返回: $example1 = array(3, 9, 5, 12); $example2 = array(5, 4); $example3 = array(8, 2, 4, 7, 3); 我试过: 3 9 3 5 3 12 9 5 9 12 5 12 $example2: 5 4 $example3: 8 2 8 4 8 7 8 3 2 4 2 7 2 3 4 7 4 3 7 3 这封回信给我: 但是

如何在不重复的情况下在这些数组元素之间实现一对一的组合

对于$example1,应返回:

$example1 = array(3, 9, 5, 12);
$example2 = array(5, 4);
$example3 = array(8, 2, 4, 7, 3);
我试过:

3 9
3 5
3 12
9 5
9 12
5 12

$example2:

5 4

$example3:

8 2
8 4
8 7
8 3
2 4
2 7
2 3
4 7
4 3
7 3
这封回信给我:


但是,如何才能最好地排除重复

差不多。但是在第二个循环中,您只需要拾取原始数组的一部分

函数在这里可能会有所帮助

$example1=array3,9,5,12; 对于$i=0,$n=count$example1$i<$n$i++{ foreacharray_切片$example1,$i+1作为$value{ 回显$example1[$i].'.$value.\n; } }
这只是获得结果的另一种方式

<?php 

$example3 = array(8, 2, 4, 7, 3);

foreach ($example3 as $e) {

  foreach ($example3 as $e2) {
     if ($e != $e2) {
        echo $e . ' ' . $e2 . "\n"; 
     }
  }

}

@PiotrOlaszewski的可能副本在哪里有一对一的组合?
for($i=0;$i<count($example1);$i++)
{
    for($j=$i;$j<count($example1);$j++)
    {
        if($example1[$i] != $example1[$j])
        {
            echo $example1[$i].'::'.$example1[$j].'<br>';
        }
    }
}