我想基于索引合并两个关联数组

我有两个索引为1到10的数组,然后必须根据索引合并它。因此,只需要增加一些员工的工资。


我尝试使用,array_merge()但输出未合并。我无法获得正确的输出。输出只是employeeSalary数组。为什么会这样呢?


$employee = array

(

0=>

    array("employee_id"=>1, "firstName"=>"Zahir", "lastName"=>"Alam", "Age"=>25, "Company"=>"Switchme", "Role"=>"Developer", "Department"=>"Tech"

        ,"Head"=>

            array("Id"=>3 , "Name"=>"Sourasis Roy")

    )

,

1=>

    array("employee_id"=>2, "firstName"=>"Amith", "lastName"=>"Manniken", "Age"=>25, "Company"=>"Switchme", "Role"=>"Developer", "Department"=>"Tech"

        ,"Head"=>

            array("Id"=>3 , "Name"=>"Sourasis Roy")

    )

,

2=>

    array("employee_id"=>3, "firstName"=>"Sourasis", "lastName"=>"Roy", "Age"=>28, "Company"=>"Switchme", "Role"=>"CTO")

,

3=>

    array("employee_id"=>4, "firstName"=>"Aditya", "lastName"=>"Mishra", "Age"=>29, "Company"=>"Switchme", "Department"=>"Tech", "Role"=>"CEO")

,

4=>

    array("employee_id"=>5, "firstName"=>"Priti", "lastName"=>"Lata", "Age"=>24, "Company"=>"Switchme", "Role"=>"HR")

,

5=>

    array("employee_id"=>6, "firstName"=>"Sumita", "lastName"=>"Nath", "Age"=>24, "Company"=>"Switchme", "Role"=>"HLA Head", "Department"=>"Crm")

,

6=>

    array("employee_id"=>7, "firstName"=>"Tarini", "lastName"=>"Khanna", "Age"=>22, "Company"=>"Switchme", "Role"=>"Content Writer")

,

7=>

    array("employee_id"=>8, "firstName"=>"Abhisek", "lastName"=>"Soni", "Age"=>23, "Company"=>"Switchme", "Role"=>"HLA", "Department"=>"Crm","Head"=>array("Id"=>5 , "Name"=>"Sumita Nath")

    )

,

8=>

    array("employee_id"=>9, "firstName"=>"Ankit", "lastName"=>"Pump", "Age"=>23, "Company"=>"Switchme", "Role"=>"HLA", "Department"=>"Crm"

        ,"Head"=>

            array("Id"=>5 , "Name"=>"Sumita Nath")

    )

,

9=>

    array("employee_id"=>10, "firstName"=>"Pogo", "lastName"=>"Laal", "Age"=>23, "Company"=>"Switchme", "Role"=>"Designer")

,

10=>

    array("employee_id"=>11, "firstName"=>"Sabina", "lastName"=>"Sekh", "Age"=>28, "Company"=>"Switchme", "Role"=>"HLA Head", "Department"=>"Crm")

慕少森
浏览 157回答 3
3回答

翻过高山走不出你

尝试以下解决方案,使用数组的值$employee和$employee_salary问题中给出的值。$ar= array();foreach($employee as $j => $v){&nbsp; &nbsp; $id = $v['employee_id'];&nbsp; &nbsp; foreach($employee_salary as $i => $u){&nbsp; &nbsp; &nbsp;$id_s = $u['employee_id'] ;&nbsp; &nbsp; &nbsp;if($id == $id_s){&nbsp; &nbsp; &nbsp; &nbsp;$ar = $employee[$j] + $employee_salary[$i];&nbsp; &nbsp; &nbsp; &nbsp;print_r($ar);&nbsp; &nbsp; &nbsp; &nbsp;echo "<br>";&nbsp; &nbsp; &nbsp;}&nbsp; &nbsp; }}

largeQ

我认为也将有一个简单的解决方案。因为您已经使用id键创建了employee_salary数组。所以会是这样。Foreach($employee as $key=> $value){&nbsp;&nbsp; &nbsp; &nbsp;$employee[$key]['salary'] = $employee_salary[$value['employee_id']]['salary'];&nbsp;}&nbsp;Print_r($employee);die;我认为这会帮助您。谢谢
打开App,查看更多内容
随时随地看视频慕课网APP