【发布时间】:2017-09-19 07:44:49
【问题描述】:
我的查询是
$fuel_histories = FuelHistory::where('device_id',$Device->id)
->where('when','<',$to_date)
->where('when','>',$from_date)
->select('when','value')
->orderBy('when','asc')->get();
$data = [];
$dates=[];
foreach($fuel_histories as $key=>$value):
$data[$value->when->toDateTimeString()]= $value->value;
endforeach;
我有一个这样的数组,其中键是日期时间,值是数字
[2017-09-17 19:53:24] => 6
[2017-09-18 11:53:15] => 1.212
[2017-09-18 11:54:25] => 1.212
[2017-09-18 12:07:40] => 1.212
[2017-09-18 12:07:58] => 8
[2017-09-18 12:25:09] => 12
[2017-09-18 12:25:56] => 19
[2017-09-18 12:37:25] => 17
[2017-09-19 19:54:47] => 1
[2017-09-22 19:54:36] => 2
在这里,我有多个时间不同但日期相同的键。 如果某些键具有相同的日期和时间是 24 小时格式,我需要最新的日期时间。所以日期相同的键是
[2017-09-18 11:53:15] => 1.212
[2017-09-18 11:54:25] => 1.212
[2017-09-18 12:07:40] => 1.212
[2017-09-18 12:07:58] => 8
[2017-09-18 12:25:09] => 12
[2017-09-18 12:25:56] => 19
[2017-09-18 12:37:25] => 17
最大时间是
12:37:25
所以我需要一对是
[2017-09-18 12:37:25] => 17
最后我的预期输出是
[2017-09-17 19:53:24] => 6
[2017-09-18 12:37:25] => 17
[2017-09-19 19:54:47] => 1
[2017-09-22 19:54:36] => 2
【问题讨论】:
-
你已经尝试过什么?你的 PHP 代码在哪里?
-
我在查询和过滤后得到了这个数组,现在我正在寻求帮助以获得我的预期结果,我已经尝试过时间戳没有运气@JustBaron
-
好吧,您可以创建一个多维数组(日期、时间、值),然后按日期排序,然后按时间排序。或者在添加到现有数组之前检查最新时间。
-
请您删除否决票:3
标签: php arrays laravel datetime