2012-07-26 6 views
1

Je travaille sur une application iPhone où je reçois la date et l'heure (séparée) de l'utilisateur et le soumettant à mon service Web php. Le service Web php est alors censé prendre cette date et l'heure et l'enregistrer dans utc fuseau horaire. J'ai lu que je vais aussi avoir besoin de fuseau horaire local dans le fichier php pour le convertir en utc. Je reçois 'Asia/Kolkata (IST) offset 1980' comme valeur de fuseau horaire dans mon application iPhone et je peux l'envoyer en fichier php. Maintenant, comment vais-je convertir la date, l'heure et le fuseau horaire en utc date.convertir les valeurs locales de date, heure et fuseau horaire en utc fuseau horaire dans php

Je dois convertir la date en format utc afin que je puisse interroger ma table pour obtenir des données qui n'ont pas dépassé l'heure locale.

Merci à l'avance

Cordialement
Pankaj

Répondre

0

Utilisez setTimeZone pour convertir le fuseau horaire de ce que l'utilisateur envoie à UTC:

$utz = new DateTimeZone($input['timezone']); 
    $udt = new DateTime($input['date'].' '.$input['time'], $utz); 
    $udt->setTimezone(new DateTimeZone('UTC')); 

    echo $input['date'].' '.$input['time'].' '.$input['timezone'].' is '.$udt->format('Y-m-d H:i:s')." UTC\n"; 
0

départ PHP DateTime();

Essentiellement, vous aurez envie de gérer un peu comme ci-dessous.

$date = new DateTime($dateFromiPhone); 
$date->setTimeZone(new DateTimeZone("UTC")); 

Et puis utilisez $date->format(); pour formater pour votre utilisation souhaitée

Questions connexes