【问题标题】:Create multiple arrays from existing array [duplicate]从现有数组创建多个数组[重复]
【发布时间】:2013-03-23 18:15:57
【问题描述】:

我被困在一个有 3 个数组的地方,如下所示:

$c = array("red","green","blue");
$s = array("12","13","14");
$l = array("3","4","5");

基于这个数组,我需要这样的数组:

$one = array("red", "12", "3");
$two = array("red", "12", "4");
$three = array("red", "12", "5");
$three = array("red", "13", "3");
...........

同样,我需要创建包含以上 3 个数组的所有组合的数组。

我试图通过循环创建,但谁能告诉我一个更好的解决方案或现有的 php 函数。

【问题讨论】:

  • “循环遍历所有”的解决方案应该只有大约 4 行代码,你为什么要寻找“更好”的东西?
  • 谢谢@deceze,这是比我做的更好的解决方案

标签: php arrays


【解决方案1】:

有一个帮助类:

https://github.com/noptic/co3/blob/master/src/daliaIT/co3/util/generator/ArrayGenerator.php

该包不再托管,但您可以删除“IInject”接口和“inject”方法并将其用作独立类。

可以用 foreach 迭代该类,而无需在内存中创建所有组合。

如果您需要一个“真实”数组,请调用“toArray”方法

【讨论】:

    猜你喜欢
    • 2021-03-09
    • 2018-12-19
    • 1970-01-01
    • 2017-08-26
    • 1970-01-01
    • 2022-09-30
    • 2012-06-29
    • 2012-09-22
    • 2014-01-30
    相关资源
    最近更新 更多