Ich habe vor kurzem auf PHP5 Upgrade und haben noticied, dass innerhalb einer Anwendung, die ich gebaut habe es scheint eine zusätzliche Stunde hinzugefügt werden, um einige meiner Variablen und caculations.
Ich benutze:
date_default_timezone_set ( 'Europa / London');
die ich verstehen bedeutet, dass PHP mit BST zu Standard GMT Gegensatz, aber wenn ich leer Variablen drucken (zurückgegeben, bevor sie als 00.00 mit „H: i“) - Ich bin jetzt 01.00 bekommen.
Wenn caculating die Stunde / min Differenz zwischen zwei Datetimes - Ich bin auch eine zusätzliche Stunde bekommen.
Mein Grundcode ist:
<td><?php if(isset($item->start_time)) { echo date('H:i', strtotime($item->start_time)); } ?></td>
<td><?php if(isset($item->finish_time)) { echo date('H:i', strtotime($item->finish_time)); }?></td>
<td>
<?php
$start = strtotime($item->start_time);
$end = strtotime($item->finish_time);
$elapsed = $end - $start;
if($elapsed != NULL) { echo date(H:i, $elapsed); }
?>
</td>
Welche für ein Beispiel Rown kehrt:
Start: 08.57 (Basierend auf $ item-> START_TIME wie 2011-03-19 08.57.23 in meiner DB)
Finish: 12.59 (Basierend auf $ item-> finish_time wie 2011-03-19 12.59.38 in meiner DB)
Caculation: 5.02 (Dies sollte 4.02 sein)













