php - 如何将多维与特定值合并

标签 php mysql codeigniter

我在合并二维数组时遇到了问题

我有三个具有相同月份的数组

第一个数组:(求职者)

Array
(
    [0] => Array
        (
            [MONTH] => 5
            [jobseeker] => 4
        )

    [1] => Array
        (
            [MONTH] => 6
            [jobseeker] => 4
        )

)

第二个数组:(公司)

Array
(
    [0] => Array
        (
            [MONTH] => 6
            [company] => 11
        )

)

第三个数组:(工作)

Array
(
    [0] => Array
        (
            [MONTH] => 6
            [job] => 20
        )

)

我试过这段代码:

$total_stats = array_merge_recursive($jobseeker_stats, $company_stats, $job_stats);

我希望输出是:

Array
(
     [0] => Array
        (
            [MONTH] => 5
            [jobseeker] => 4
        )
     [1] => Array
        (
            [MONTH] => 6
            [jobseeker] => 4
            [company] => 11
            [job] => 20
        )

最佳答案

您需要使用 array_column() , array_search()foreach()

$seconArrayMonths =  array_column($array2,'MONTH');
$thirdArrayMonths =  array_column($array3,'MONTH');


foreach($array1 as &$arr){
    $secondArrayMonthKey = array_search($arr['MONTH'],$seconArrayMonths);
    if($secondArrayMonthKey !== false){
        $arr['company'] = $array2[$secondArrayMonthKey]['company'];
    }
    $thirdArrayMonthKey = array_search($arr['MONTH'],$thirdArrayMonths);
    if($thirdArrayMonthKey !== false){
        $arr['job'] = $array3[$secondArrayMonthKey]['job'];
    }

}

print_r($array1);

输出:- https://3v4l.org/BKJqj

关于php - 如何将多维与特定值合并,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56592990/

相关文章:

php - 提交后显示消息

java - MD5 结果不同

php - 快速搜索查询

mysql - 如何从数据库中选择高于确切数字的数据

php - 电子邮件 Codeigniter 不工作

php - Mysql检查数据库中是否存在电子邮件,一直返回0

php - Drupal 8 PDO 准备语句绑定(bind)值错误

php - MySQL 插入子查询(在联结表上)

javascript - 我在 codeigniter 中的 AJAX 登录表单始终选择 else 语句,即使满足条件也是如此。这些怎么解决呢?

javascript - 更改 form_open 路径 (CodeIgniter)