繁体   English   中英

需要 PHP 阵列方面的帮助

[英]Need help with PHP array

谁能帮帮我,我被卡住了,不知道如何编写嵌套 for 循环的 php 以转换为键值数组。

这是数组结构。

需要转成键值数组(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"
    }
} 

非常感谢提前

您有两个 arrays 存储在一个数组中。 您想要一个数组而不是两个子数组下的 arrays 的值?

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

我认为您正在寻找array_merge ,它将两个 arrays 合并在一起:

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

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

$allValues = array();

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

array_merge() function 可以从多个 arrays 创建一个数组。 在您的示例中,它是这样工作的:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM