2015-08-31 1 views
0

Je sauvegarde la date et l'heure dans le fuseau horaire UTC de ma base de données. aime: 2015-07-22 17:08:11convertir heure UTC en PST en yii2?

Je veux convertir ce temps en temps pacifique zone 2015-07-22 11:07:18.

savoir moi, je suis en utilisant cette fonction:

public static function UTCToPST($format, $time) { 
    $dst = intval(date("I", $time)); 
    $tzOffset = intval(date('Z', time())); 
    return date($format, $time + $tzOffset - 28800 + $dst * 3600); 
    } 

Que dois-je faire pour obtenir le temps dans le format 22/07/2015 11:07:18? ou y a-t-il un autre bon moyen pour yii2?

Merci.

+0

Votre méthode de calcul du décalage est erronée. Le décalage * courant * n'est pas nécessairement le décalage correct à utiliser pour l'heure fournie, en raison de l'heure d'été et d'autres bizarreries de fuseau horaire. Vous devriez utiliser les classes 'DateTime' et' DateTimeZone' de PHP. –

Répondre

0

J'ai toujours la date magasin/heure qu'Unix Horodatage dans la base de données (utilisation INT (11) dans MySQL)

Parce qu'il est Unix Time Stamp, utilisez simplement la date de PHP() pour le convertir en datetime à votre prédéfini fuseau horaire