You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP如何将for循环查询数据库得到的日期字符串存入数组并获取首个值

解决方法

你之前得到多个独立单元素数组,是因为你在循环内部每次对单个日期字符串做explode拆分操作,单个日期字符串没有指定分隔符的话拆分结果自然只有一个元素,不需要做拆分操作,直接把每次循环拿到的日期存入统一数组即可。

第一步:构建统一的日期数组

在循环外初始化空数组,循环内将每次获取到的日期字符串追加到数组中:

$fd = new FormData("database_form");
$links = $another_dbForm->get_links('call_logs', $fd->get_field_struct('datetime'));
// 初始化空数组存储所有日期
$dateList = [];
for($i=0; $i<count($links); $i++)
{
    $fd->set_ticket_id( $links[$i] );
    $logDate= $fd->get_field('datetime'); 
    // 追加当前日期到数组
    $dateList[] = $logDate;
}
// 可打印验证数组结构
// var_dump($dateList);

第二步:提取日期计算时间间隔

构建完成的数组可以通过下标直接取出对应日期,下标从0开始计数,你可以用PHP内置的DateTime类快速计算时间间隔:

// 提取第一个日期:2021-09-14 15:23:27
$start = new DateTime($dateList[0]);
// 提取第四个日期:2021-09-24 16:07:50
$end = new DateTime($dateList[3]);
// 计算间隔
$diff = $start->diff($end);

// 按需输出间隔信息
echo "间隔:".$diff->d."天".$diff->h."小时".$diff->i."分钟";
// 如果需要总秒数/总小时数,也可以转时间戳计算
$totalSec = strtotime($dateList[3]) - strtotime($dateList[0]);
$totalHour = $totalSec / 3600;

内容的提问来源于stack exchange,提问作者Darren

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 16:36:04