0

私はPHPを学ぶ初心者です。今日私はプロジェクトを持っていて行き詰まっていて、それは私のブランドを壊しました:(。誰かが私がそれを解決するのを手伝ってくれることを願っています。

例私は構造を持つ配列を持っています:

Array ( 
    [a] => Array ( 
        [__base_val] => A 
        [c] => Array ( 
            [__base_val] => C 
            [e] => E 
            [f] => F 
        ) 
        [d] => D 
    ) 
    [b] => Array ( 
        [__base_val] => B 
        [g] => G 
    ) 
    [h] => H 
)

ここで、各ノードの値を取得し、値のツリーを出力する必要があります。しかし、foreach関数を使用している場合、以前に知っていれば、1つまたは2つ、あるいは任意の次元のインデックスしか取得できません。

配列のインデックス次元に従って値を取得するためのPHPコードを作成するにはどうすればよいですか?次元数を知る必要はありませんか?

これは私が望む結果です:

class1: value from [__base_val]
class2: value from [__base_val]
child class 2 : value
4

1 に答える 1

1

これがあなたが探しているものかどうかはわかりませんが、そうだといいのですが。

<?php
function print_deep($value, $key) {
    echo "$value: value from $key\n";
}

// Note: $array being the input array
array_walk_recursive($array, 'print_deep');
于 2012-07-23T10:23:35.460 に答える