gpt4 book ai didi

php - mysql 和 PHP 中两个日期之间的差异

转载 作者:行者123 更新时间:2023-11-29 16:10:49 27 4
gpt4 key购买 nike

我想知道 PHP 中同一个表中不同 id 的两个日期(表字段中的连接)之间的差异。我的表结构附件如下。

enter image description here

显示的日期显示在下面屏幕截图中提到的字段中。

[![在此处输入图像描述][2]][2]

下面提到了我的 php 代码

<table id="dataTableExample1" class="table table-bordered table-striped table-hover">
<thead>
<tr class="info">
<th class="text-center">Days</th>
<th>Date</th>
<th>Title</th>
<th>Time Interval</th>
<th>Attachment</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php
$proj_id = $_GET['proj_id'];
$proj = mysql_query("select * from project_historytl where proj_id='$proj_id' order by proj_histl_id desc") or die(mysql_error());
///echo "select * from project_historytl where proj_histl_id='$proj_id' order by proj_histl_id desc";exit();
$s = 0;
while ($getannexure = mysql_fetch_array($proj))
{
$s++;
?>

<tr>
<td class="text-center">Day <?php echo $s;?></td>
<td><?php echo $getannexure['joinon']; ?></td>
<td><?php echo $getannexure['proj_history_title']; ?></td>
<td> </td>
<td><a href="uploads/<?php echo $getannexure['attachment']; ?>" target="_blank">View</a> </td>
<td>
<a href="#" class="btn btn-add btn-sm"><span class="elusive icon-pencil" title="edit"></span><i class="fa fa-pencil"></i></a>
<button type="button" class="btn btn-danger btn-sm" data-toggle="modal" data-target="#customer2"><i class="fa fa-trash-o"></i> </button>
</td>
</tr>

<?php
}
?>
</tbody>
</table>

我得到的结果像这样的格式 enter image description here

最佳答案

比较两个日期的逻辑如下:

$datetime1 = new DateTime('2009-10-11');
$datetime2 = new DateTime('2009-10-13');
$interval = $datetime1->diff($datetime2);
echo $interval->format('%R%a days');

就您而言,如果稍微更改结构,以便在开始比较日期之前将所有数组行存储在单个数组中,可能会更容易。

while() 循环替换为以下内容:

while ($getannexure[] = mysql_fetch_array($proj, MYSQL_ASSOC)){}

运行以下foreach():

foreach($getannexure as $id => $row) {
if (!empty($getannexure[$id + 1])) {
$datetime1 = new DateTime($row[$id + 1]['joinon']);
$datetime2 = new DateTime($row[$id]['joinon']);
$interval = $datetime1->diff($datetime2);
$getannexure[$id]['diff'] = $interval->format('%R%a days');
} else {
$getannexure[$id]['diff'] = NULL;
}
}

现在像您一样循环遍历 $getannexure 数组,您将获得一个可以使用的附加 diff 值。

关于php - mysql 和 PHP 中两个日期之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55274654/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com