生成多个对象类型的所有组合

时间:2017-05-10 19:03:09

标签: php math combinations

我有两个课程:A.phpB.php

我想生成一个一个对象和两个 B对象的所有组合。

例如,我们说我有这些对象:

A1
A2

B1
B2 
B3

这是我想要产生的组合:

A1 B1 B2
A1 B1 B3
A1 B2 B3

A2 B1 B2
A2 B1 B3
A2 B2 B3

我使用Math_Combinatorics包,可在此处找到:https://github.com/pear/Math_Combinatorics

我可以用它来生成相同类型对象的所有组合:

$Math = new Math_Combinatorics;
$objectsB = [$objectB1, $objectB2, $objectB3];
$combinations = $Math->combinations($objectsB, 2); 

// Which results in ...
$object1, $object2
$object1, $object3
$object2, $object3

但是,当我想为不同类型的不同对象生成不同数量的组合时,我不知道如何实现这一目标。

在这种情况下,它是A的一个和B的两个,但理想情况下,这适用于每种类型的任何数量。

0 个答案:

没有答案