将嵌套的关联阵列转换为PHP中的单个数组

发布于 2025-01-23 03:24:52 字数 965 浏览 2 评论 0原文

我已经嵌套了Key&价值对。我想将其转换为单个数组。

/* This is current array */
Array
(
    [id] => Array
        (
            [0] => 1
            [1] => 2
        )
    [qty] => Array
        (
            [0] => 1
            [1] => 1
        )

    [price] => Array
        (
            [0] => 364.41
            [1] => 300
        )

    [amount] => Array
        (
            [0] => 364.41
            [1] => 300
        )
)
/*Now, I want this type of array*/
Array
(
    [0] => Array
            (
                [id] => 1
                [qty] => 1
                [price] => 364.41
                [amount] => 364.41
            )
    [1] => Array
            (
                [id] => 2
                [qty] => 1
                [price] => 300
                [amount] => 300
            )
)

我尝试了Array_walk和其他一些解决方案,但我找不到任何适当的解决方案,

谢谢

I have nested array with key & value pair. i want to convert it in single array.

/* This is current array */
Array
(
    [id] => Array
        (
            [0] => 1
            [1] => 2
        )
    [qty] => Array
        (
            [0] => 1
            [1] => 1
        )

    [price] => Array
        (
            [0] => 364.41
            [1] => 300
        )

    [amount] => Array
        (
            [0] => 364.41
            [1] => 300
        )
)
/*Now, I want this type of array*/
Array
(
    [0] => Array
            (
                [id] => 1
                [qty] => 1
                [price] => 364.41
                [amount] => 364.41
            )
    [1] => Array
            (
                [id] => 2
                [qty] => 1
                [price] => 300
                [amount] => 300
            )
)

I have tried array_walk and some other solutions but i could not find any proper solution

Thanks in advance

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

站稳脚跟 2025-01-30 03:24:52

主要阵列是您的嵌套数组,收集是您想要的结果

        foreach($mainArray["id"] as $key => $value ){
        $collection[$key] = ['id' => $value];
        foreach(array_keys($mainArray) as $arrayKeysOfmainArray){
            if(!array_key_exists($arrayKeysOfmainArray, $collection)){
                $collection[$key][$arrayKeysOfmainArray] = $mainArray[$arrayKeysOfmainArray][$key];
            }
        }
    }

    print_r($collection);

Main array is your nested array and Collection is the result you want

        foreach($mainArray["id"] as $key => $value ){
        $collection[$key] = ['id' => $value];
        foreach(array_keys($mainArray) as $arrayKeysOfmainArray){
            if(!array_key_exists($arrayKeysOfmainArray, $collection)){
                $collection[$key][$arrayKeysOfmainArray] = $mainArray[$arrayKeysOfmainArray][$key];
            }
        }
    }

    print_r($collection);
穿越时光隧道 2025-01-30 03:24:52
$mainarray['id'] = Array(1,2,3);
$mainarray['qty'] = Array(1,1,4);
$mainarray['price'] = Array(364.41,300,500);
$mainarray['amount'] = Array(364.41,300,600);
$new = [];     

foreach($mainarray as $key=> $singleArray){
   if(count($singleArray) > 0){
       foreach($singleArray as $childKey=> $value){
                $new[$childKey][$key] = $value;
       }
   };
}` 
$mainarray['id'] = Array(1,2,3);
$mainarray['qty'] = Array(1,1,4);
$mainarray['price'] = Array(364.41,300,500);
$mainarray['amount'] = Array(364.41,300,600);
$new = [];     

foreach($mainarray as $key=> $singleArray){
   if(count($singleArray) > 0){
       foreach($singleArray as $childKey=> $value){
                $new[$childKey][$key] = $value;
       }
   };
}` 
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文