如何使用PHP向数组添加时差? - php

我在MySQL中具有以下数组结构。可能没有项目,也可能有很多项目;该示例仅显示三个。

Array
(
    [0] => Array
        (
            [id] => 1
            ...
            [start_time] => 09:00:00
            [finish_time] => 10:20:00
            ...
        )

    [1] => Array
        (
            [id] => 2
            ...
            [start_time] => 13:00:00
            [finish_time] => 14:20:00
            ...
        )
    [2] => Array
        (
            [id] => 23
            ...
            [start_time] => 18:05:00
            [finish_time] => 19:35:00
            ...
        )

     etc etc

)

我想添加start_time和finish_time之间的时差,并找出PHP的总时间。

例如,上面的代码应产生250分钟或4小时10分钟(80分钟+ 80分钟+ 90分钟)。我该怎么做呢?

参考方案

在PHP中:

$total_diff = 0;

foreach($items as $item)
{
    $total_diff += strtotime($item['finish_time']) - strtotime($item['start_time']);
}

strtotime()函数会将时间值转换为秒。然后,您可以根据需要将$total_diff值转换为分钟,小时等。

如果您有权修改原始MySQL查询,则可以在单个查询中完成:

SELECT sum( UNIX_TIMESTAMP(finish_time) - UNIX_TIMESTAMP(start_time) )
FROM table

在上面,UNIX_TIMESTAMP执行与PHP中的strtotime()相同的功能。

php:将分钟取整到最近的四分之一小时,然后执行更多操作 - php

最初的问题是这样的:取分钟数->转换为四分之一小时-> 1个四分之一小时为1个单位->输出单位我今天整天都在整理页面,几分钟前我的大脑就停止工作了,我只是不知道如何输出单位数量。我知道在此网站上发布问题会有所帮助。因此,用户输入的分钟数(不是小时和分钟,而是数分钟),站点需要输出单位数量。单位是一个刻钟。分钟总是四舍五入到最近的四分之一小时…

php Singleton类实例将在多个会话中保留吗? - php

举一个简单的例子,如果我想计算一个不使用磁盘存储的脚本的命中次数,我可以使用静态类成员来执行此操作吗?用户1:<?php $test = Example::singleton(); $test->visits++; ?> 用户2:<?php $test = Example::singleton(); $test->visits+…

PHP-将日期插入日期时间字段 - php

我已在数据库中使用datetime字段存储日期,使用PHP将“今天的日期”插入该字段的正确方法是什么?干杯, 参考方案 我认为您可以使用php date()函数

PHP strtotime困境 - php

有人可以解释为什么这在我的服务器上输出为true吗?date_default_timezone_set('Europe/Bucharest'); var_dump( strtotime('29.03.2015 03:00', time()) === strtotime('29.03.2015 04:00�…

php ziparchive类源代码 - php

Improve this question 我如何获取ziparchive类本身的源代码。 参考方案 假设您在谈论PHP ZipArchive class:下载PHP source code并查找适当的文件。如果您希望源代码是PHP代码,您可能会感到失望,因为源代码是用C语言编写的。或者,也可以在PHP Github Development Reposito…