2016-07-04 4 views
1

私はある時点で立ち往生しており、助けが必要です。日付と時刻のラジオボタンを持つフォームがあります。ユーザーは、リストから適切な日付と時刻を選択し、次へをクリックします。これらの日付と時刻は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 

として見出しと下のように、この表示を変更したいです私は各セッションで日付を繰り返す必要はありません。 1日のセッションごとにチェックボックスが表示されます。誰でもこれをより良く表現して分かち合ってください。

+0

メイク配列 '$ tic_to [$ツー>フォーマット( 'D、DM-Y')] [] = $ツー>フォーマット( 'H:I A') ; 'それを出力する – splash58

答えて

0

各繰り返しの日付を記録し、日付が変更された場合にのみ記録することができます。

何か等:

$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'); 
} 
関連する問題