我剛剛遇到此問題。我有一個多維數組($ 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