替换数组php
我有两个数组。我的问题是,如何将lang_1中的数组替换为lang_2中的数组,其中status_answer=2 only首先搜索lang_2以查找所需的元素:替换数组php,php,arrays,Php,Arrays,我有两个数组。我的问题是,如何将lang_1中的数组替换为lang_2中的数组,其中status_answer=2 only首先搜索lang_2以查找所需的元素: [lang_1] => Array ( [0] => Array ( [answer] => satu [status_answer] => 2 [key_array]
[lang_1] => Array
(
[0] => Array
(
[answer] => satu
[status_answer] => 2
[key_array] => 0
[language] => lang_1
)
[1] => Array
(
[answer] => dua_en
[status_answer] => 3
[key_array] =>
[language] => lang_1
)
[2] => Array
(
[answer] => lima
[status_answer] => 3
[key_array] =>
[language] => lang_1
)
[3] => Array
(
[answer] => enam
[status_answer] => 3
[key_array] =>
[language] => lang_1
)
)
[lang_2] => Array
(
[0] => Array
(
[answer] => satu
[status_answer] => 3
[key_array] =>
[language] => lang_2
)
[1] => Array
(
[answer] => dua_en
[status_answer] => 2
[key_array] => 1
[language] => lang_2
)
[2] => Array
(
[answer] => lima
[status_answer] => 3
[key_array] =>
[language] => lang_2
)
[3] => Array
(
[answer] => enam
[status_answer] => 3
[key_array] =>
[language] => lang_2
)
)
然后在lang_1中搜索要替换的元素:
foreach ($array['lang_2'] as $el) {
if ($el['status_answer'] == 2) {
$replacement = $el;
break;
}
}
如果lang_2中有多个元素的状态为2会怎么样?这不会发生。。但如果真的发生了。只要取lang_2中的值。只需将lang_2替换为lang_1,就可以编写一个循环,在lang_2中查找具有所需值的元素。然后编写一个循环,在lang_1中找到要替换的元素,并替换它。
foreach ($array['lang_1'] as &$el) {
if ($el['status_answer'] == 2) {
$el = $replacement;
}
}