对不起标题,因为它看起来像大多数其他关于组合数组的问题,但我不知道如何更具体地写它。
我需要一个 PHP 函数,它将一个数组的条目(从 1 到任意的动态大小)组合成每个可能组合的字符串。
这是一个包含 4 个条目的示例:
$input = array('e1','e2','e3','e4);
这应该是结果:
$result = array(
0 => 'e1',
1 => 'e1-e2',
2 => 'e1-e2-e3',
3 => 'e1-e2-e3-e4',
4 => 'e1-e2-e4',
5 => 'e1-e3',
6 => 'e1-e3-e4',
7 => 'e1-e4'
8 => 'e2',
9 => 'e2-e3',
10 => 'e2-e3-e4',
11 => 'e2-e4',
12 => 'e3',
13 => 'e3-e4',
14 => 'e4'
);
输入数组的排序是相关的,因为它会影响输出。如您所见,应该有一个结果 like e1-e2
but no e2-e1
。
看起来真的很复杂,因为输入数组可以有任意数量的条目。我什至不知道是否有描述这种情况的数学结构或名称。
以前有人做过吗?