我刚刚遇到此问题。我有一个多维数组($ varianti),看起来像这样:拆分多维数组的子数组
Array
(
[pa_taglia] => Array
(
[0] => l
[1] => m
)
[pa_colore] => Array
(
[0] => blu
[1] => giallo
[2] => rosso
)
)
我需要的是让不同阵列的每个子阵列,所以我需要这样的结果:
Array
(
[0] => l
[1] => m
)
Array
(
[0] => blu
[1] => giallo
[2] => rosso
)
的主要问题是我可以根据需要获取尽可能多的子数组(这是为了让我的Woocommerce插件从属性创建product_variations),因此它需要灵活。
这是我想出了一个代码(2小时后...):
$keys = array_keys($varianti);//get the main keys
//split multidimensional array in sub arrays
foreach ($keys as $key=>$val){
$nr_var[$val]= count($varianti[$keys[$key]]);//create array such as array('key1'=> qty1, 'key2'=> qty2);
$$val = $varianti[$keys[$key]];//create a variable variable from key
}
print_r($nr_var);
foreach ($nr_var as $chiave=>$valore){
print_r($$chiave);//retrieve values calling variable variable
}
我希望这可能是帮助任何人。
我不确定问题是什么?如果你有自己的答案的解决方案,那么你应该发布它作为一个答案,而不是延长你的问题。 – Epodax