如何从多维数组中获取值和键?

时间:2016-07-28 18:27:16

标签: arrays

我正在使用foreach循环来获取multidimenssional数组的值。循环如下:

foreach ($value as $k => $v) {
  print_r($v);
}

此循环的输出如下:

Array
(
  [1] => task1admin
  [status] => 0
)
Array
(
  [50] =>  task2pltfrom
  [status] => 0
)

我只想将密钥[1][50]存储在变量中,还希望存储密钥[1]=>的值及其值[50]=>

此外,我还希望得到'status'值。

我是新的并且与多维数组混淆。提前一吨。

2 个答案:

答案 0 :(得分:1)

使用keycurrent函数的解决方案:

$arr = [
    Array( 1 => 'task1admin', 'status' => 0 ),
    Array( 50 => 'task2pltfrom', 'status' => 0 )
];

// base structure
$result = ['uid' => [], 'activity' => [], 'status' => []];
foreach ($arr as $v) {
    $result['status'][] = $v['status'];
    $result['uid'][] = key($v);
    $result['activity'][] = current($v);
}

print_r($result);

输出:

Array
(
    [uid] => Array
        (
            [0] => 1
            [1] => 50
        )

    [activity] => Array
        (
            [0] => task1admin
            [1] => task2pltfrom
        )

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

答案 1 :(得分:0)

使用预定义的功能。

array_valuesarray_keys