PHP关联数组-每个数组的匹配键值将是一个表行

PHP关联数组-每个数组的匹配键值将是一个表行,php,arrays,Php,Arrays,我有一个这样的数组- Array ( [sku] => Array ( [0] => SKU125 [1] => SKU121 [2] => SKU122 [3] => SKU124 ) [variation_description] => Array ( [0] => test anot

我有一个这样的数组-

Array
(
   [sku] => Array
       (
           [0] => SKU125
           [1] => SKU121
           [2] => SKU122
           [3] => SKU124
       )

    [variation_description] => Array
       (
           [0] => test another
           [1] => test
           [2] => test
           [3] => test
       )


   [price_html] => Array
       (
           [0] => 400,200
           [1] => 500
           [2] => 600,300
           [3] => 700
       )

  )
是否可以将数组转换为与此表相似-

任何形式的帮助都将不胜感激


提前感谢

您可以简单地遍历数据并创建一个新数组

$data = [
    'sku'                   => ['SKU125', 'SKU121', 'SKU122', 'SKU124'],
    'variation_description' => ['test another', 'test', 'test', 'test'],
    'price_html'            => ['400,200', '500', '600,300', '700']
];

$mapped = [];
$keys = array_keys($data);
$rows = count($data[reset($keys)]);

for ($i = 0; $i < $rows; $i++) {
    $row = [];
    foreach ($keys as $key)
        $row[] = $data[$key][$i];
    $mapped[] = $row;
}
$data = [
'sku'                   => ['SKU125', 'SKU121', 'SKU122', 'SKU124'],
'variation_description' => ['test another', 'test', 'test', 'test'],
'price_html'            => ['400,200', '500', '600,300', '700']
 ];

$re_structured = [];

foreach ($data as $each_key_data ) {
   foreach ($each_key_data as $key => $value2 ) {
      $re_structured[$key][] = $value2;
   }
}
var_dump($re_structured);
由于每个键(sku、price_html等)都有相同数量的数据,所以只需将相应的键数据推送到一个新数组中即可

$data = [
    'sku'                   => ['SKU125', 'SKU121', 'SKU122', 'SKU124'],
    'variation_description' => ['test another', 'test', 'test', 'test'],
    'price_html'            => ['400,200', '500', '600,300', '700']
];

$mapped = [];
$keys = array_keys($data);
$rows = count($data[reset($keys)]);

for ($i = 0; $i < $rows; $i++) {
    $row = [];
    foreach ($keys as $key)
        $row[] = $data[$key][$i];
    $mapped[] = $row;
}
$data = [
'sku'                   => ['SKU125', 'SKU121', 'SKU122', 'SKU124'],
'variation_description' => ['test another', 'test', 'test', 'test'],
'price_html'            => ['400,200', '500', '600,300', '700']
 ];

$re_structured = [];

foreach ($data as $each_key_data ) {
   foreach ($each_key_data as $key => $value2 ) {
      $re_structured[$key][] = $value2;
   }
}
var_dump($re_structured);