在 PHP 中从其他数组中排序数组


Sort Array from other array in PHP

我有 2 种类型的数组,我想从其他数组中排列一个数组。 检查以下数组

阵列 1

Array
(
[78445] => Array
        (
            [title] => Never change
        )
[78441] => Array
        (
            [title] => test 123
        )
[78439] => Array
        (
            [title] => test 111
        )
[78893] => Array
        (
            [title] => test 222
        )
[78893] => Array
        (
            [title] => test 555
        )
)

另一个阵列 2

Array
(
    [0] => 78439
    [1] => 78441
    [2] => 78893
    [3] => 78891
)

现在我想根据数组 1 对数组 2 进行排序,如下所示

Array
(
[78445] => Array
        (
            [title] => Never change
        )
[78439] => Array
        (
            [title] => test 111
        )
[78441] => Array
        (
            [title] => test 123
        )
[78893] => Array
        (
            [title] => test 555
        )
[78891] => Array
        (
            [title] => test 222
        )
)

在此数组中,一个问题是您将看到数组第 0 个键不在数组 2 中。这个数组 1(数组[0])是固定的,但不显示在数组 2 中。在数组 1 中只显示标题,但在这个数组中我还有另一个键,如描述、图像等。我如何对这个数组进行排序。

$array1 = array(
    "78441"=>array("title"=>"test 123"),
    "78442"=>array("title"=>"test 124"),
    "78443"=>array("title"=>"test 125"),
    "78444"=>array("title"=>"test 126"),
);
$array2 = array(78442, 78443, 78441, 78444);
$sorted = array();
foreach($array2 as $a) $sorted[$a] = $array1[$a];
print_r($sorted);

小提琴:https://3v4l.org/SoMlP