【发布时间】:2019-02-23 08:16:13
【问题描述】:
我在转换数组时遇到了一些小困难,需要专业人士的帮助。
我有一个这样的数组:
$inputs = array(
'size' => array(
's' => 's',
'm' => 'm',
'l' => 'l',
),
'color' => array(
'red' => 'red',
'blue' => 'blue',
),
'option' => 'option 1',
);
根据这些值,我需要创建一个组合所有可能性的数组,就像这样:
$possibilities = array(
0 => array('size' => 's', 'color' => 'red', 'option' => 'option 1'),
1 => array('size' => 'm', 'color' => 'red', 'option' => 'option 1'),
2 => array('size' => 'l', 'color' => 'red', 'option' => 'option 1'),
3 => array('size' => 's', 'color' => 'blue', 'option' => 'option 1'),
4 => array('size' => 'm', 'color' => 'blue', 'option' => 'option 1'),
5 => array('size' => 'l', 'color' => 'blue', 'option' => 'option 1'),
);
我确切地说我在 laravel 上,所以我可以使用 collection methods,但即使使用这个辅助方法,我也找不到获得我想要的 $possibilities 数组的方法。
原始数组是动态的(可以有更多具有不同标签名称的选项),所以我需要能够工作的东西,无论数组大小和标签名称如何。
【问题讨论】:
-
欢迎您,能否请您发布您已有的代码?
-
这并不能完全解决您的问题,因为
option 1是一个字符串而不是一个数组,但是您可以轻松地基于它来运行代码:stackoverflow.com/questions/6311779/… -
@JoelHinz 谢谢,你的例子似乎和我很接近,如果我能以此为基础我会尝试。