[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Сопоставление элементов массива друг с другом
Dizzy
Может кто подтолкнет на мысль, а то в голове одни костыли получаются.

Есть массив

Array(1 => 'One', 2 => 'Two', 3 => 'Three');


Нужно вывести так, чтобы каждый элемент массива стоял в паре с другим по 2 раза, но только не с самим собой.
Т.е. такой вывод:

One Two
One Two
One Three
One Three
Two Three
Two Three

Игорь_Vasinsky
хзю так чтоли?
$arr = Array(1 => 'One', 2 => 'Two', 3 => 'Three');

foreach($arr as $k=>$v){
foreach($arr as $j=>$l){
if($v != $l){
echo $v . ' ' . $l."\r\n";
echo $v . ' ' . $l."\r\n";
}
}
}



One Two
One Two
One Three
One Three
Two One
Two One
Two Three
Two Three
Three One
Three One
Three Two
Three Two


_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
bestxp
пройтись в цикле в цикле по массиву и склеить в новый массив
Dizzy
Цитата (Игорь_Vasinsky @ 16.07.2015 - 08:41)
хзю так чтоли?
$arr = Array(1 => 'One', 2 => 'Two', 3 => 'Three');

foreach($arr as $k=>$v){
foreach($arr as $j=>$l){
if($v != $l){
echo $v . ' ' . $l."\r\n";
echo $v . ' ' . $l."\r\n";
}
}
}



One Two
One Two
One Three
One Three
Two One
Two One
Two Three
Two Three
Three One
Three One
Three Two
Three Two

Да, только не должно быть дубликатов даже если они меняются местам:

Three One
Three One
One Three
One Three

Это уже 4 пары, а должно быть 2.

Но все равно спасибо
Игорь_Vasinsky
Цитата
Да, только не должно быть дубликатов даже если они меняются местам:

ну так дерзай)

только собирай в массив и ещё проверяй ключ с элементом на элемент с ключом

т.е. key=>elem != elem=>key

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Dizzy
Цитата (Игорь_Vasinsky @ 16.07.2015 - 08:50)
Цитата
Да, только не должно быть дубликатов даже если они меняются местам:

ну так дерзай)

только собирай в массив и ещё проверяй ключ с элементом на элемент с ключом

т.е. key=>elem != elem=>key

Спасибо!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.