需要帮助PHP数组

时间:2011-06-07 10:11:16

标签: php

任何人都可以帮助我,我卡住了,不知道怎么写php嵌套for循环转换成键值数组。

这是数组结构。

需要变成键值数组(将JobDescription和userdetail数组合在一起)

array(2) {
    ["jobDescription"]=> array(5) {
        ["funeralFor"]=> string(6) "Myself"
        ["serviceType"]=> string(1) "1"
        ["religionType"]=> string(1) "2"
        ["area"]=> string(4) "2154"
        ["customerComment"]=> string(6) "fdfddf"
    }
    ["userDetail"]=> array(6) {
        ["contactEmail"]=> string(16) "fdddf@fffgfg.com"
        ["contactFirstName"]=> string(6) "fddfdf"
        ["contactLastName"]=> string(6) "fddffd"
        ["contactPhoneNumber"]=> string(10) "0420988191"
        ["signup"]=> array(2) {
            ["id"]=> string(32) "8048f0f7106c336e1a8825d1d3bec902"
            ["input"]=> string(3) "k5m"
        }
        ["agreement"]=> string(1) "1"
    }
} 

非常感谢

5 个答案:

答案 0 :(得分:4)

您有两个存储在数组中的数组。您希望两个数组的值在一个数组下而不是两个子数组中吗?

$newArray = array_merge($array['jobDescription'], $array['userDetail']);

答案 1 :(得分:1)

我认为你正在寻找array_merge,它将两个数组合并在一起:

$new_arr = array_merge($arr['jobDescription'], $arr['userDetail']);

答案 2 :(得分:1)

array_merge($bigArray['jobDescription'], $bigArray['userDetail']);

答案 3 :(得分:0)

你只需要循环一次。不需要嵌套。此解决方案涵盖了要合并的未定义数量的阵列。否则,您可以按照Dickie的建议使用array_merge

$allValues = array();

if(count($mainArray) > 0)
{
    foreach($mainArray as $arr)
    {
        $allValues += $arr;
    }
}

答案 4 :(得分:0)

array_merge()函数可以从多个数组创建一个数组。在您的示例中,它以这种方式工作:

$yours = array(...);
$values = array_merge($yours["jobDescription"], $yours["userDetail"]);