2016-04-02 20 views
0

Ich habe versucht, Datum zu Hubspot zu übergeben.Aber es zeigt folgende Fehlermeldung [Nachricht] => 1462127400 ist um 22: 8: 47.400 UTC, nicht Mitternacht!Wie konvertiert man Datum in UTC Mitternacht mit PHP

wie zu Mitternacht UTC-Format konvertieren Datum mit PHP

+0

Möchten Sie einen Unix-Zeitstempel in den Unix-Zeitstempel von Mitternacht an diesem Tag konvertieren? Ist der Zeitstempel in Sekunden oder Millisekunden? – v7d8dpo4

Antwort

4

Kurzer Weg beginnen zu bekommen (Mitternacht) von UTC aktuellen Tag:

echo date_create(date('Y-m-d'), timezone_open('UTC'))->getTimestamp(); 

Willen Ausgang (Jetzt ist es 2016.04.02 10.22 UTC):

1459555200 

Check:

$date = date_create(date('Y-m-d'), timezone_open('UTC')); 
echo $date->format('Y-m-d H:i:s') . PHP_EOL; 
echo $date->getTimestamp() . PHP_EOL; 

Ausgabe:

2016-04-02 00:00:00 
1459555200 

Zum Anfang des UTC Tages zu erhalten nach vorgegebenem Datum Zeichenfolge (d Standard-Time-Zone TOT):

$dateString = '2016-03-15 23:05:00'; 

$date = new DateTime($dateString); 
#  └──────────┴┈┈┈┈> is the same as date_create() 
$date->setTimezone(timezone_open('UTC')); 
$date->modify('midnight'); 
echo $date->format('Y-m-d H:i:s') . PHP_EOL; 
echo $date->getTimestamp() . PHP_EOL; 

Ausgang:

2016-03-15 00:00:00 
1458000000 

One-line Art und Weise:

echo date_create($dateString)->setTimezone(timezone_open('UTC'))->modify('midnight')->getTimestamp(); 

Zum Anfang des UTC Tag zu erhalten nach vorgegebenen Zeitstempel:

$timeStamp = 1458036300; 

$date = new DateTime("@$timeStamp"); 
#      ↑ use @ to create a DateTime from timestamp 
$date->modify('midnight'); 
echo $date->format('Y-m-d H:i:s') . PHP_EOL; 
echo $date->getTimestamp() . PHP_EOL; 

Ausgabe:

2016-03-15 00:00:00 
1458000000 

One-line Art und Weise:

echo date_create("@$timeStamp")->modify('midnight')->getTimestamp(); 

Beachten Sie, dass mit UNIX-Zeitstempel wir Time-Zone nicht festlegen müssen, weil UNIX-Zeitstempel UTC basiert.

Verwandte Themen