Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP-基于键映射两个数组_Php_Arrays_Explode_Array Merge - Fatal编程技术网

PHP-基于键映射两个数组

PHP-基于键映射两个数组,php,arrays,explode,array-merge,Php,Arrays,Explode,Array Merge,用户阵列 print_R($user_array); Array ( [0] => Array ( [SKILL_NAME] => Application Software [EXPERIENCE_BAND] => 15+ [SITE_STATUS] => Onsite [NO_OF_RESOURCE] => 1 [ACTU

用户阵列

print_R($user_array);
Array
(
    [0] => Array
        (
            [SKILL_NAME] => Application Software
            [EXPERIENCE_BAND] => 15+
            [SITE_STATUS] => Onsite
            [NO_OF_RESOURCE] => 1
            [ACTUAL_HOURS] => 16
        )

    [1] => Array
        (
            [SKILL_NAME] => Application Software
            [EXPERIENCE_BAND] => 2-4
            [SITE_STATUS] => Onsite
            [NO_OF_RESOURCE] => 1
            [ACTUAL_HOURS] => 96
        )

)
print_R($value_array);
Array
(
    [RATE_PER_HOUR] => 80,50
    [MARKUP_PERCENT] => 5,10
    [TOTAL_COST] => 8064.00,880.00
)
值数组

print_R($user_array);
Array
(
    [0] => Array
        (
            [SKILL_NAME] => Application Software
            [EXPERIENCE_BAND] => 15+
            [SITE_STATUS] => Onsite
            [NO_OF_RESOURCE] => 1
            [ACTUAL_HOURS] => 16
        )

    [1] => Array
        (
            [SKILL_NAME] => Application Software
            [EXPERIENCE_BAND] => 2-4
            [SITE_STATUS] => Onsite
            [NO_OF_RESOURCE] => 1
            [ACTUAL_HOURS] => 96
        )

)
print_R($value_array);
Array
(
    [RATE_PER_HOUR] => 80,50
    [MARKUP_PERCENT] => 5,10
    [TOTAL_COST] => 8064.00,880.00
)
分解值数组<代码>每小时速率<代码>

$rate_per_hour=爆炸(',',$array_data['rate_per_hour'])

下面的输出。
MARKUP\u PERCENT
TOTAL\u COST

Array
(
    [0] => 80
    [1] => 50
)
如何映射以上两个数组,使输出如下所示。数组映射是基于密钥完成的,以维护正确的数据

Array
(
    [0] => Array
        (
            [SKILL_NAME] => Application Software
            [EXPERIENCE_BAND] => 15+
            [SITE_STATUS] => Onsite
            [NO_OF_RESOURCE] => 1
            [ACTUAL_HOURS] => 16
            [RATE_PER_HOUR] => 80
            [MARKUP_PERCENT] => 5
            [TOTAL_COST] => 8064.00
        )

    [1] => Array
        (
            [SKILL_NAME] => Application Software
            [EXPERIENCE_BAND] => 2-4
            [SITE_STATUS] => Onsite
            [NO_OF_RESOURCE] => 1
            [ACTUAL_HOURS] => 96
            [RATE_PER_HOUR] => 50
            [MARKUP_PERCENT] => 10
            [TOTAL_COST] => 880.00
        )

)

分解值数组中的每个值。循环执行此操作,并将它们添加到用户数组的相应元素中

foreach ($value_array as $key => $data) {
    $data_array = explode(',', $data);
    foreach ($data_array as $index => $val) {
        $user_array[$index][$key] = $val;
    }
}

您尝试过什么吗?尝试过使用array\u merge,但不确定如何基于密钥执行。您能向我们展示您的代码上下文吗?像
每个人都会尝试
数组_merge
,好像这是一个神奇的函数,可以找出程序员想要实现的关系。可能的重复?感谢您的响应。我已经分解了需要添加到main
user\u array
中的特定键的数组。我不知道如何确切地使用上面的代码段来生成预期的输出。考虑到上面的数组,我应该怎么做呢?只需将
$value\u数组的
$value
$user
更改为
$user\u数组
,语义。@slimshaddyyy我已经确定了使用数组名称的答案。在更新的代码中,您在哪里设置
$data\u数组