我有一个如下所示的数组。
Array ( [0] => Array ( [label] => 2020-04-01 11:44:13 [y] => 100 ) [1] => Array ( [label] => 2020-04-
01 11:45:49 [y] => 150 ) [2] => Array ( [label] => 2020-04-01 13:11:24 [y] => 175 ) [3] => Array (
[label] => 2020-04-02 10:19:08 [y] => 200 ) [4] => Array ( [label] => 2020-04-02 11:24:38 [y] => 250
) [5] => Array ( [label] => 2020-04-04 12:24:38 [y] => 300 ) [6] => Array ( [label] => 2020-04-05
13:49:38 [y] => 400 ) [7] => Array ( [label] => 2020-04-05 14:36:38 [y] => 450 ) [8] => Array (
[label] => 2020-04-05 14:24:38 [y] => 550 ) [9] => Array ( [label] => 2020-04-08 09:20:41 [y] => 600
) [10] => Array ( [label] => 2020-04-08 10:09:38 [y] => 635 ) [11] => Array ( [label] => 2020-04-08
11:35:33 [y] => 690 ) [12] => Array ( [label] => 2020-04-08 13:24:38 [y] => 725 ) [13] => Array (
[label] => 2020-04-08 17:12:35 [y] => 775 ) )
您可以看到,我有一个14的数组,每个数组都有两个值label
和y
,我将它们都作为图表数据点传递。
下面是我的代码
<?PHP
$dataPointskWh = array();
$dataPointskWhDiff = array();
$model = $dataProvider->getModels();
foreach ($model as $row)
{
// pushing for kwh values
array_push($dataPointskWh, array("label"=>$row['Data_Date_Time'],"y"=>$row['kWh']));
}
?>
我想做什么
array[1][y] - array[0][y]
中给与我50
,在array[2][y] - array[1][y]
中给我25
,以此类推,直到数组末尾有所不同。array[1][label]-array[2][label]
,array[2][label]-array[1][label]
等)>array_push($dataPointskWhDiff, array("label"=>$row['Data_Date_Time'],"y"=>$row['kWh']));
最后,我将其传递给图表dataPoints: <?php echo json_encode($dataPointskWhdIFF, JSON_NUMERIC_CHECK); ?>
中的数据点>
foreach ($dataPointskWh as $key => $number) {
if (isset($dataPointskWh[$key+1])) {
$dataPointskWhDiff[$number] = $number - $dataPointskWh[$key+1];
}
}
var_dump($dataPointskWhDiff);
die();
我得到的错误是Unsupported operand types
处的$dataPointskWhDiff[$number] = $number - $dataPointskWh[$key+1];
我该如何实现?任何帮助将不胜感激
我有一个看起来像下面的数组。 Array([0] => Array([label] => 2020-04-01 11:44:13 [y] => 100)[1] => Array([label] => 2020-04- 01 11: 45:49 [y] => 150)[2] =&...
首先,在这一行中,您有2个基本错误。
$dataPointskWhDiff[$number] = $number - $dataPointskWh[$key+1];