PHP 2 D配列キー値による1 Dキー名の取得

3940 ワード

次の既定の配列があります.
$inviteType = [
            '  ' => [
                'type' => 0,
                'point' => 5,
            ],
            '  ' => [
                'type' => 1,
                'point' => 5,
            ],
            '  ' => [
                'type' => 2,
                'point' => 10,
            ],
            '  ' => [
                'type' => 3,
                'point' => 50,
            ],
            '  ' => [
                'type' => 4,
                'point' => 50,
            ],
            '  ' => [
                'type' => 5,
                'point' => 5,
            ],
            '    ' => [
                'type' => 6,
                'point' => 50,
            ],
        ];

需要:typeの中のキー値、例えば0という値を通じて、「スキャンコード」という中国語のテキストを取得するのは頭が痛い問題で、最後に資料を探すことを通じて、とても使いやすい方法を発見して、この需要を解決することができます:
$arr = array_map('array_shift',$inviteType);

echo "
"
;
print_r($arr);
echo "";
array_map(‘array_shift’,array)は、arrayの の のキー を し、その を すことを し、このときのキー はarrayのキー であることに し、 は の りである.
Array
(
    [  ] => 0
    [  ] => 1
    [  ] => 2
    [  ] => 3
    [  ] => 4
    [  ] => 5
    [    ] => 6
)

! される は の のキー であり、pointを2 の に くと、 される pointの ( が い)になるので、 の では フィールドを に する があります!
のデータが られ、 なキー が に られます.
$type = 0;

$key = array_search($type,$arr);

echo $key;

は のとおりです.
  

したがって、2 D の のキー から1 Dキー を すると、 の のコードにまとめることができます.
array_search('type',array_map('array_shift',$array))