[英]Compare values from array with every other value
I have an array like so: 我有一个像这样的数组:
$array = [['name'=> 'one'], ['name'=>'two'],['name'=> 'three'], ['name'=>'four']];
I want to compare/print every combination from that array: 我想比较/打印该数组中的每个组合:
one -> two one -> three ... two -> three two -> four 一->二一->三...二->三二->四
and so on... 等等...
I tried 我试过了
<?php foreach ($compares as $k1 => $v1 ){
echo $v1->id.'<br>';
foreach ($compares2 as $k2 => $v2 ){
if($k1 == $k2) echo $v2->id.'<br>';
}
}
?>
I don't know if I understand your requirements correctly (I can modify it if you want). 我不知道我是否正确理解您的要求(如果需要,我可以对其进行修改)。 Have a look at this example: 看一下这个例子:
<?php
$array = [
['name'=> 'one'],
['name'=>'two'],
['name'=> 'three'],
['name'=>'four']
];
for ($i = 0; $i < count($array)-1; $i++) {
for ($j = $i+1; $j < count($array); $j++) {
echo $array[$i]['name'] . ' > ';
echo $array[$j]['name'] . '<br>';
}
}
Pavels answer seem to be right, maybe you should check your values for duplicates? Pavels的回答似乎是正确的,也许您应该检查您的值是否重复?
<?php
$array = [['id'=> 'one'],['id'=>'two'],['id'=> 'three'],['id'=>'four']];
for ($i = 0; $i < count($array)-1; $i++) {
for ($j = $i+1; $j < count($array); $j++) {
echo $array[$i]['id'] . ' - ';
echo $array[$j]['id'] . '<br>';
}
}
?>
OUTPUT: OUTPUT:
one - two
one - three
one - four
two - three
two - four
three - four
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.