【问题标题】:date and time loop for display日期和时间循环显示
【发布时间】:2016-07-04 06:17:27
【问题描述】:

我被困在一个点上并且需要帮助,我有一个带有日期和时间单选按钮的表单。用户从列表中选择适当的日期和时间,然后单击下一步。这些日期和时间使用 API 显示。下面是代码

<?php

foreach($sessions as $session){
                            $parts = explode("T",$session >Session_dtmDate_Time);
                            $sessiondt = $parts[0];
                            $parts2 = explode("-",$parts[1]);
                            $sessiondt .= " ".$parts2[0];

$to = date_create($sessiondt);
$tic_to= $to->format('h:i A, D, d-M-Y');
?>

 <input type="radio" name="sessionid" value="<?php echo $session->Session_strID; ?>" ><?php echo $tic_to; ?>

<?php

}

?>

它的输出与每个单选按钮一样

09:15 PM, Thu, 07-Jul-2016
04:00 PM, Fri, 08-Jul-2016
08:45 PM, Fri, 08-Jul-2016
03:15 PM, Sat, 09-Jul-2016
07:15 PM, Sat, 09-Jul-2016
03:15 PM, Sun, 10-Jul-2016
07:15 PM, Sun, 10-Jul-2016

但我想将此显示更改为如下所示,标题为日期和日期

 Thu, 07-Jul-2016

      09:15PM

 Fri, 08-Jul-2016

      04:00PM
      08:45PM

 Sat, 09-Jul-2016  

      03:15PM
      07:15PM

 Sun, 10-Jul-2016

      03:15PM
      07:15PM

我不想在每个会话中重复日期。每天的每个会话都会有一个复选框。或者任何人知道更好的表示,然后请分享

【问题讨论】:

  • 制作数组$tic_to[$to-&gt;format('D, d-M-Y')][]= $to-&gt;format('h:i A');并输出

标签: php loops date time


【解决方案1】:

您可以跟踪每次迭代的日期,并且仅在日期发生变化时打印日期。

类似:

$currentDay = null;
foreach ($dates as $date) {
    $day = $date->format('D, d-m-Y');
    if($day !== $currentDay) {
        $currentDay = $day;
        echo $day.'<br>';
    }

    echo $date->format('h:i');
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多