Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.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_Laravel_Associative Array - Fatal编程技术网

Php 比较两个关联数组值并替换它们

Php 比较两个关联数组值并替换它们,php,arrays,laravel,associative-array,Php,Arrays,Laravel,Associative Array,我在处理2个关联数组时遇到了一个问题。我有两个数组,如果数组1的id=数组2的id=id,那么数组1的活动和活动学习应该分别替换为数组2的活动和活动学习 数组1=> 数组2=> 因此,预期的数组将是 请尝试此代码 $res = []; foreach($x as $key => $xx) { foreach($y as $k => $yy) { if($xx['id'] == $yy['id']) { $res[$key] = $xx;

我在处理2个关联数组时遇到了一个问题。我有两个数组,如果数组1的id=数组2的id=id,那么数组1的活动和活动学习应该分别替换为数组2的活动和活动学习

数组1=>

数组2=>

因此,预期的数组将是

请尝试此代码

$res = [];
foreach($x as $key => $xx)
{
  foreach($y as $k => $yy)
  {
    if($xx['id'] == $yy['id'])
    {
        $res[$key] = $xx;

        $res[$key]['active_lession'] = $yy['active_lession'];
        $res[$key]['active_learning_lession'] = $yy['active_learning_lession'];
    }
    else
    {
        if(!array_key_exists($key,$res))
        {
            $res[$key] = $xx;
        }
    }


  }
}
print_r($res);  

输出将是

Array
(
[0] => Array
    (
        [id] => 3
        [status] => 1
        [active_lession] => 20
        [active_learning_lession] => 25
        [learninglessions] => Array
            (
                [0] => Array
                    (
                        [id] => 2
                        [language_id] => 1
                        [category_id] => 3
                        [sentence] => jhdbfhbs
                        [english_sentence] => I am student of …… School.
                    )

                [1] => Array
                    (
                        [id] => 27
                        [language_id] => 1
                        [category_id] => 3
                        [sentence] => dbshbfjhf
                        [english_sentence] => He is my friend.
                    )

            )

    )

[1] => Array
    (
        [id] => 4
        [name] => Module 2
        [image] => public/icon/downloadxxx.jpeg
        [status] => 1
        [active_lession] => 15
        [active_learning_lession] => 20
        [learninglessions] => Array
            (
                [0] => Array
                    (
                        [id] => 1
                        [language_id] => 1
                        [category_id] => 4
                        [sentence] => jhbdsfhjferu
                        [english_sentence] => I am...
                    )

            )

    )

[2] => Array
    (
        [id] => 5
        [status] => 1
        [active_lession] => 0
        [active_learning_lession] => 0
        [learninglessions] => Array
            (
                [0] => Array
                    (
                        [id] => 29
                        [language_id] => 1
                        [category_id] => 5
                        [sentence] => jbfhgbdu
                        [english_sentence] => This is a Park.
                    )

                [1] => Array
                    (
                        [id] => 34
                        [language_id] => 1
                        [category_id] => 5
                        [sentence] => jhsbdhjfbuyefr
                        [english_sentence] => How are things ?
                    )

            )

    )

)
请尝试此代码

$res = [];
foreach($x as $key => $xx)
{
  foreach($y as $k => $yy)
  {
    if($xx['id'] == $yy['id'])
    {
        $res[$key] = $xx;

        $res[$key]['active_lession'] = $yy['active_lession'];
        $res[$key]['active_learning_lession'] = $yy['active_learning_lession'];
    }
    else
    {
        if(!array_key_exists($key,$res))
        {
            $res[$key] = $xx;
        }
    }


  }
}
print_r($res);  

输出将是

Array
(
[0] => Array
    (
        [id] => 3
        [status] => 1
        [active_lession] => 20
        [active_learning_lession] => 25
        [learninglessions] => Array
            (
                [0] => Array
                    (
                        [id] => 2
                        [language_id] => 1
                        [category_id] => 3
                        [sentence] => jhdbfhbs
                        [english_sentence] => I am student of …… School.
                    )

                [1] => Array
                    (
                        [id] => 27
                        [language_id] => 1
                        [category_id] => 3
                        [sentence] => dbshbfjhf
                        [english_sentence] => He is my friend.
                    )

            )

    )

[1] => Array
    (
        [id] => 4
        [name] => Module 2
        [image] => public/icon/downloadxxx.jpeg
        [status] => 1
        [active_lession] => 15
        [active_learning_lession] => 20
        [learninglessions] => Array
            (
                [0] => Array
                    (
                        [id] => 1
                        [language_id] => 1
                        [category_id] => 4
                        [sentence] => jhbdsfhjferu
                        [english_sentence] => I am...
                    )

            )

    )

[2] => Array
    (
        [id] => 5
        [status] => 1
        [active_lession] => 0
        [active_learning_lession] => 0
        [learninglessions] => Array
            (
                [0] => Array
                    (
                        [id] => 29
                        [language_id] => 1
                        [category_id] => 5
                        [sentence] => jbfhgbdu
                        [english_sentence] => This is a Park.
                    )

                [1] => Array
                    (
                        [id] => 34
                        [language_id] => 1
                        [category_id] => 5
                        [sentence] => jhsbdhjfbuyefr
                        [english_sentence] => How are things ?
                    )

            )

    )

)

你为实现这一目标而编写的代码在哪里?我将与你分享。你为实现这一目标而编写的代码在哪里?我将与你分享。当然,非常感谢你,非常感谢
foreach($x as $key => $value)
{
foreach($y as $yy)
{
    if($value['id'] == $yy['id'])
    {
        $x[$key]['active_learning_lession'] = $yy['active_learning_lession'];
        $x[$key]['active_lession'] = $yy['active_lession'];


    }
}

} 
print_r($x);
Array
(
[0] => Array
    (
        [id] => 3
        [status] => 1
        [active_lession] => 20
        [active_learning_lession] => 25
        [learninglessions] => Array
            (
                [0] => Array
                    (
                        [id] => 2
                        [language_id] => 1
                        [category_id] => 3
                        [sentence] => jhdbfhbs
                        [english_sentence] => I am student of …… School.
                    )

                [1] => Array
                    (
                        [id] => 27
                        [language_id] => 1
                        [category_id] => 3
                        [sentence] => dbshbfjhf
                        [english_sentence] => He is my friend.
                    )

            )

    )

[1] => Array
    (
        [id] => 4
        [name] => Module 2
        [image] => public/icon/downloadxxx.jpeg
        [status] => 1
        [active_lession] => 15
        [active_learning_lession] => 20
        [learninglessions] => Array
            (
                [0] => Array
                    (
                        [id] => 1
                        [language_id] => 1
                        [category_id] => 4
                        [sentence] => jhbdsfhjferu
                        [english_sentence] => I am...
                    )

            )

    )

[2] => Array
    (
        [id] => 5
        [status] => 1
        [active_lession] => 0
        [active_learning_lession] => 0
        [learninglessions] => Array
            (
                [0] => Array
                    (
                        [id] => 29
                        [language_id] => 1
                        [category_id] => 5
                        [sentence] => jbfhgbdu
                        [english_sentence] => This is a Park.
                    )

                [1] => Array
                    (
                        [id] => 34
                        [language_id] => 1
                        [category_id] => 5
                        [sentence] => jhsbdhjfbuyefr
                        [english_sentence] => How are things ?
                    )

            )

    )

)