PHP嵌套foreach来创建像笛卡尔积的东西

时间:2014-02-12 20:33:13

标签: php arrays loops foreach cartesian-product

我在PHP上创建脚本时遇到了问题。我有3个数组stylescolorssizes(这是顺序)。我需要在它们之间组合值以获得类似Cartesian Product的内容。 3个复杂的foreachs应该有所帮助,任何(甚至全部)都可以为空。如何将它们结合起来?

例如:

$styles = array('formal', 'dressy');
$colors = array();
$sizes = array(16, 18);

结果应为:

$res = array(
    array('style' => 'formal', 'size' => 16),
    array('style' => 'formal', 'size' => 18),
    array('style' => 'dressy', 'size' => 16),
    array('style' => 'dressy', 'size' => 18),
);

如果$colors不为空,则样式和大小之间应该是颜色。我怎样才能做到这一点?

0 个答案:

没有答案