php - 用于获取两个时间戳变量之间的差异(以小时为单位)的代码

标签 php mysql forms datetime time

我正在尝试使用数据库中的持续时间来自动获取代码中采用不同格式的两个时间戳(LeaveFrom 和 Leaveto)之间的差异。我有两个间隔的 Post 变量,第一个以 sql 格式显示日期,另一个以 sql 格式显示时间。它可以工作,以便它们在我的数据库中都显示为 Leaveto 和 LeaveFrom 的时间戳。我希望持续时间变量在与其他变量一起插入数据库时​​计算 $begindate 和 $enddate 之间的差异(以小时为单位)。这可能吗?有人能解释一下怎么做吗?

if(isset($_POST['LeaveRequest'])) { // checking that form is submitted

    session_start();  //creating variables for form entries
    $Enum = $_POST['Employeenumber'];
    $fullname = $_POST['Leavename'];
    $leavetype = $_POST['Leavetype'];
    $begindate = $_POST['LeaveFrom'].' '.$_POST['BeginTime'];
    $enddate = $_POST['Leaveto'].' '.$_POST['EndTime'];
    $duration = (I dont know!!)
    $unit = $_POST['Unit'];
    $leavereason = $_POST['LeaveReason'];
    $leavestatus = "Pending";
    $supervisor = $_POST['Supervisor'];

$sql = $con->query("INSERT INTO Leave_details 
(Employeenumber, Leavename, Leavetype, LeaveFrom, Leaveto, 
Duration, Unitpick, LeaveReason, LeaveStatus,  Supervisor)Values('{$Enum}', 
'{$fullname}', '{$leavetype}', '{$begindate}', '{$enddate}' ,'{$duration}',
'{$unit}' , '{$leavereason}', '{$leavestatus}', '{$supervisor}')");


     header('Location: Account.php');

最佳答案

您可以使用DateTime

(如果您使用日期格式 Y-m-d H:i:s 或类似格式)

$begindate = new DateTime($_POST['LeaveFrom'].' '.$_POST['BeginTime']);
$enddate = new DateTime($_POST['Leaveto'].' '.$_POST['EndTime']);
$diff = $begindate->diff($enddate);
print_r($diff);

输出:

DateInterval Object
(
    [y] => 0
    [m] => 0
    [d] => 1
    [h] => 0
    [i] => 0
    [s] => 0
    [invert] => 1
    [days] => 1
)

所以你可以使用:

$diff->h

希望这有帮助。

关于php - 用于获取两个时间戳变量之间的差异(以小时为单位)的代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32257392/

相关文章:

javascript - 如何在 wordpress 的 css 编辑器上合并 javascript?

带有钠整数错误的PHP random_bytes

jquery - 如何检查函数的返回值是 true 还是 false

jquery - 注入(inject)表单元素后重新加载 DOM?

javascript - 用 javascript 替换 src 属性 – 获取相对路径 –

php - jQuery 数据表插件太慢 - 需要更换

mysql - 如何将一个表中的值插入到另一个表中?

php - 使用 CakePHP 的 UTF-8 MySQL 表中的 Windows 1252 数据

mysql - 在 WebFaction 中使用 Django 和 MySQL

css - 流体输入元件