-1

FirePHP を使用して作業内容を確認するときに取得するこの多次元 (?) 配列から適切なデータを取得する際に問題が発生しました。

array(
    ['day'] => 'Wed'
    ['is_used'] => 1
    [0] =>
    array(
        ['day'] =>
        'Wed'
        ['title'] =>
        'onsdag denna veckan 2'
        ['content'] =>
        ['price'] =>
    )
    [1] =>
    array(

        ['day'] =>
        'Wed'
        ['title'] =>
        'onsdagslunchen'
        ['content'] =>
        ['price'] =>
        123123
    )
)

それが意味がある場合、配列で0、1配列を使用したい...?それとも、この配列が壊れていますか?

やってみると

foreach ($foo as $bar){
    echo $bar
}

day、is_used、および 0, 1 配列の 4 つの結果が得られます。

4

2 に答える 2

2

コードは値を正しく返しています。$foo次の配列の最初の子を返します。

day
is_used
0
1

dayis_usedは文字列ですが、01は配列であるため、それらの値を取得するにはそれらをもう一度循環する必要があります。

foreach ($foo as $fooKey=>$bar){
    if(is_array($bar))
        // cycle through the array
        foreach ($bar as $key=>$value)
            // Echo out the string of the array
            echo "$fooKey $key = $value<br />";
        }
    } else {
        // Echo out the string
       echo "$fooKey = $bar<br />";
    }
}

次のように表示されます。

day = Wed
is_used = 1
0 day = Wed
0 title = onsdag denna veckan 2
0 content =
0 price =
1 day = Wed
1 title = onsdagslunchen
1 content =
1 price = 123123
于 2012-08-15T08:37:41.757 に答える
0

多分これはあなたが望むものです:

foreach ($my_array as $key=>$val) {
    if (is_numeric($key) {
        // do something with $val (where $val is an array in the example)
    }
}
于 2012-08-15T08:36:26.543 に答える