0

この配列を取得しました:

Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [correct] => 
                    [answer] => false answer1
                )

            [1] => Array
                (
                    [correct] => 
                    [answer] => false answer2
                )

            [2] => Array
                (
                    [correct] => 
                    [answer] => false answer3
                )

            [3] => Array
                (
                    [correct] => 1
                    [answer] => correct answer
                )

        )

    [1] => Array
        (
            [0] => Array
                (
                    [correct] => 
                    [answer] => false answer1
                )

            [1] => Array
                (
                    [correct] => 
                    [answer] => false answer2
                )

            [2] => Array
                (
                    [correct] => 
                    [answer] => false answer3
                )

            [3] => Array
                (
                    [correct] => 1
                    [answer] => correct answer
                )

        )
)

インデックスの配列を取得しました:

Array
(
    [0] => Array
        (
            [0] => 0
            [1] => 1
            [2] => 2
        )

    [1] => Array
        (
            [0] => 0
            [1] => 1
            [2] => 2
        )
)

私が取得したい出力:

Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [correct] => 
                    [answer] => false answer1
                )

            [1] => Array
                (
                    [correct] => 
                    [answer] => false answer2
                )

            [2] => Array
                (
                    [correct] => 
                    [answer] => false answer3
                )

        )

    [1] => Array
        (
            [0] => Array
                (
                    [correct] => 
                    [answer] => false answer1
                )

            [1] => Array
                (
                    [correct] => 
                    [answer] => false answer2
                )

            [2] => Array
                (
                    [correct] => 
                    [answer] => false answer3
                )

        )
)

ご覧のとおり、2 番目の配列のインデックスに応じて、1 番目の配列からすべての値を選択したいと考えています。それ、どうやったら出来るの?

編集:

今それを解決しようとしている方法は次のとおりです。

for($i = 0; $i < count($array1); $i++){
    $output_array[] = $array1[$i][$index_array[$i][0]];
    $output_array[] = $array1[$i][$index_array[$i][1]];
    $output_array[] = $array1[$i][$index_array[$i][2]];
}

出力は私が望むものではありません..

編集2:

次のようなことを試しました:

$output_array[$i] = array_push($array1[$i][$index_array[$i][1]]);
$output_array[$i] = array_push($array1[$i][$index_array[$i][2]]);

しかし、うまくいきませんでした..

4

1 に答える 1

0

解決しました。

for($i = 0; $i < count($array1); $i++){
    $output_array[$i][] = $array1[$i][$index_array[$i][0]];
    $output_array[$i][] = array_merge($array1[$i][$index_array[$i][1]]);
    $output_array[$i][] = array_merge($array1[$i][$index_array[$i][2]]);
}

正しい方法かどうかはわかりませんが、うまくいきます..

于 2013-05-07T06:43:39.030 に答える