在php中按索引从关联数组中分离数据



我知道我会为此使用array_map,但问题是它一直在说

注意未定义的索引:DeviceID。。。。。

我正在尝试将DeviceID分离为$key,并将其所有值分离为$value

//Code
$output = array_map(null,$getTheHistoricData['DeviceID']);
//Array
array (size=4112)
0 => 
array (size=5)
  'DeviceID' => string '1' (length=1)
  'DeviceTimestamp' => string '2018-09-22 00:00:11' (length=19)
  'LineTemp' => string '22.2148' (length=7)
  'LineCurrent' => string '232.562' (length=7)
  'RxRSSI' => string '0' (length=1)
1 => 
array (size=5)
  'DeviceID' => string '1' (length=1)
  'DeviceTimestamp' => string '2018-09-22 00:00:33' (length=19)
  'LineTemp' => string '22.2154' (length=7)
  'LineCurrent' => string '234.672' (length=7)
  'RxRSSI' => string '0' (length=1)
2 => 
array (size=5)
  'DeviceID' => string '1' (length=1)
  'DeviceTimestamp' => string '2018-09-22 00:00:55' (length=19)
  'LineTemp' => string '22.2094' (length=7)
  'LineCurrent' => string '233.954' (length=7)
  'RxRSSI' => string '0' (length=1)
and so on

您应该使用如底部所示的array_map()来完成这项工作。

$output = array_map(function($val){
    return $val['DeviceID'];
}, $getTheHistoricData);

在演示中检查结果

也可以使用array_column()代替

$output = array_column($getTheHistoricData, 'DeviceID');

最新更新