我有以下数组$data
Array
(
[0] => Array
(
[sku] => 049-1090
[color] => Beige,Brown
[Finish] => Distressed,Handscraped,Matt
[Grade] => B (Select/Advantage)
[Installation Location] => Second Floor,Main Floor
[Installation Method] => Nail Down
[Specie] => Maple
[Warranty] => 25 Years
[Width] => 5 inch
)
[1] => Array
(
[sku] => 107-1079
[color] => Brown,Yellow
[Edge] => Square Edge
[Finish] => Matt
[Grade] => B (Select/Advantage)
[Installation Location] => Second Floor,Main Floor
[Installation Method] => Glue Down,Nail Down
[Specie] => Maple
[Warranty] => 25 Years
[Width] => 3 5/8 inch
)
)
现在,我想创建一个仅包含2个键的数组$final_array
。第一个键是sku
,第二个键是feature
。 feature
键将包含除sku
以外的所有其他键的值,将,
处的值展开,因此最终数组将如下所示:
(
[sku]=>049-1090
[feature]=>color:Beige
)
(
[sku]=>049-1090
[feature]=>color:Brown
)
(
[sku]=>049-1090
[feature]=>Finish:Distressed
)
(
[sku]=>049-1090
[feature]=>Finish:Handscraped
)
(
[sku]=>049-1090
[feature]=>Finish:Matt
)
以此类推,第二个sku
我尝试过这样:
$final_array = array();
foreach($data as $value){
foreach($value as $innerkey=>$innervalue){
$final_array[] = ['sku'=>$innerkey,'feature'=>$innervalue];
}
}
echo "<pre>";
print_r($final_array);
echo "</pre>";
尝试一下: