获取associatve数组的数字索引而不指定键名

时间:2017-06-29 09:24:02

标签: php arrays

所以我来到了一个需要检查数组内部值的地方:

Array [
    'oneName' => [
        'val'   => 'str',
        'price' => 'int'
    ],
    'twoName' => [
        'val'   => 'str',
        'price' => 'int'
    ]
]

但是,这些oneNametwoName个键名是从另一个脚本动态创建的。我需要在if语句中检查twoName['price'](例如)的值,这很好。我遇到了关于类似主题的SO帖子:php - get numeric index of associative array但这是通过指定密钥名称并根据该名称返回索引值来完成的。如何在不指定密钥名称的情况下通过数字索引访问twoName?或者我问不可能?

1 个答案:

答案 0 :(得分:1)

要获取关联数组的数字索引而不指定键名,则需要使用array_values()函数。

示例:

$arr = [
    'oneName' => [
        'val'   => 'str',
        'price' => 'int'
    ],
    'twoName' => [
        'val'   => 'str',
        'price' => 'int'
    ]
];

$arr = array_values($arr);
print_r($arr);

输出:

Array
(
    [0] => Array
        (
            [val] => str
            [price] => int
        )

    [1] => Array
        (
            [val] => str
            [price] => int
        )

)