-6

配列項目の順序を事前定義された順序に変更する必要があります。

元の配列は

$order = array(3136,3121,3147,3125);

Array
(
    [3121] => Array
        (
            [0] => 311
            [1] => 311>
            [2] => First Level
        )

    [3125] => Array
        (
            [0] => 312
            [1] => 312>
            [2] => Ids
        )

    [3136] => Array
        (
            [0] => 313
            [1] => 313>
            [2] => Insurance
        )

    [3147] => Array
        (
            [0] => 314
            [1] => 314>
            [2] => Property
        )
)

以下のように生成する必要があります。

Array
(
    [3136] => Array
        (
            [0] => 313
            [1] => 313>
            [2] => Insurance
        )
    [3121] => Array
        (
            [0] => 311
            [1] => 311>
            [2] => First Level
        )
    [3147] => Array
        (
            [0] => 314
            [1] => 314>
            [2] => Property
        )
    [3125] => Array
        (
            [0] => 312
            [1] => 312>
            [2] => Ids
        )

)

ベースは配列要素のキーになり、3136要素の後、3121がプッシュされ、次に3147などがプッシュされます。

4

1 に答える 1

2

推測:

$order = array(3136,3121,3147);
$new_arr =array();
foreach ($order as $key){
    if ($old_array[$key])
        $new_arr[$key]=$old_array[$key];
}
于 2012-05-28T07:28:38.927 に答える