2013-06-25 1 views

Répondre

1

Vous devez d'abord obtenir l'heure et la différence de fuseau horaire de la base de données (probablement en utilisant un modèle).

vous pouvez utiliser gmstrftime() si la différence de fuseau horaire est en représentation numérique (par exemple +1, +2 ou -1, -2 etc.):

<?php 
    $offset = 2; 
    $timestamp = time() + ($offset * 60 * 60); 
    echo gmstrftime("%b %d %Y %H:%M:%S", $timestamp) . "\n"; 
?> 

Manuel PHP ici - http://php.net/manual/en/function.gmstrftime.php

Mais une solution plus élégante pourrait être d'utiliser DateTime :: setTimezone():

<?php 
// From PHP manual 

$date = new DateTime('2000-01-01', new DateTimeZone('Pacific/Nauru')); 
echo $date->format('Y-m-d H:i:sP') . "\n"; 

$date->setTimezone(new DateTimeZone('Pacific/Chatham')); 
echo $date->format('Y-m-d H:i:sP') . "\n"; 
?> 
Questions connexes