php将数组值替换为另一个无序的数组值


php replace array value with another array value that is out of order

如果前一个数组的键值出现问题,您将如何在PHP中编写一个排序例程,用另一个数组键值替换一个数组键的值。

$array1 = ['section2', 'section3', 'section1'];
$array2 = ['content for section1', 'content for section2', 'content section3'];

如何用$array2中的corrosconding内容替换$array1的值?

所以我想我要问的是如何使$array1显示以下内容。。。。

content for section2
content for section3
content for section1

按照这个顺序。。。。

循环两个数组,并在循环$array2时检查$array1的值是否存在,如果存在,则根据key$array1的值更改为$array2的值,这样您就可以保持顺序,即:

$array1 = ['section2', 'section3', 'section1'];
$array2 = ['content for section1', 'content for section2', 'content for section3'];
foreach($array1 as $key => $value){
    foreach($array2 as $key2 => $value2){
        if(preg_match("/$value/", $value2)){
            $array1[$key] = $value2;
        }
    }
}
print_r($array1);

输出:

Array
(
    [0] => content for section2
    [1] => content for section3
    [2] => content for section1
)

Ideone演示