Код: Выделить всё
Array
(
[1] => Array
(
[0] => 5
[1] => 15
)
[3] => Array
(
[0] => 394
[1] => 398
)
[241] => Array
(
[0] => 35145
)
)
< /code>
И мне нужно сгенерировать новый массив, который содержит 1 значение из каждого субара, но не более 1 значения из каждого субрай Быть легче объяснить визуально, приведенный ниже массив - это то, чем должен стать результат: < /p>
Array
(
[0] => Array
(
[0] => 5
[1] => 394
[2] => 35145
)
[1] => Array
(
[0] => 5
[1] => 398
[2] => 35145
)
[2] => Array
(
[0] => 15
[1] => 394
[2] => 35145
)
[3] => Array
(
[0] => 15
[1] => 398
[2] => 35145
)
)
Код: Выделить всё
$d = [];
$i = 0;
foreach ($c as $id_feature => $x) {
foreach ($x as $id_feature_value) {
$d[$i][] = $id_feature_value;
foreach ($c as $id_feature2 => $x2) {
if ($id_feature === $id_feature2) {
continue;
}
$d[$i][] = $x2[0];
}
sort($d[$i]);
$i++;
}
}
#check if only 1 feature is selected
if (empty($d)) {
$d[0][] = $this->selected_features[0];
} else {
$d = array_map("unserialize", array_unique(array_map("serialize", $d)));
}
Код: Выделить всё
Array
(
[0] => Array
(
[0] => 5
[1] => 394
[2] => 35145
)
[1] => Array
(
[0] => 15
[1] => 394
[2] => 35145
)
[3] => Array
(
[0] => 5
[1] => 398
[2] => 35145
)
)
Подробнее здесь: https://stackoverflow.com/questions/732 ... nations-of
Мобильная версия