2016-06-24 18 views
0

Ein API Anruf Parsen kehrt mir ein Datum als String in folgendem Format:PHP bestimmte Datum Zeichenfolge

/Date(1358208000000)/ 

Nun würde Ich mag diese Zeichenfolge in ein Date-Objekt analysieren (PHP).

konnte ich str_replace entfernen Sie die /Datum ( und )/ und teilen sich den Zeitstempel Unix verwenden mit 1000, aber das scheint ein wenig kompliziert für diese Angelegenheit für mich.

Irgendwelche Gedanken darüber, wie ich dies leicht zu einem Datumsobjekt analysieren könnte?

Antwort

1

Wie Sie gesagt, dass Sie auf komfortable Weise. Yo kann wie unten verwenden; -

<?php 
    $str = '/Date(1358208000000)/'; 
    $int = filter_var($str, FILTER_SANITIZE_NUMBER_INT); // get the number only from the string 
    echo date ('Y-m-d',($int/1000)); // convert number to seconds and get correct date 
?> 

Ausgang: - https://eval.in/595171

0
$string = "/Date(1358208000000)/"; 
$ts = intval(preg_replace('/[^0-9]+/', '', $string), 10); 
$date = date("m/d/y g:i a", $ts); 

https://3v4l.org/0oHbh

gibt es nichts zu teilen, es ist schon ein gültiger Zeitstempel ...

+0

Sollte das nicht Zeitstempel (1358208000000) Ausgabe 15-01-2013? – Tomzie

+0

Außerdem wird es dividieren das Datum zurück weiter im Gegensatz zu geben Ihnen ein neueres Datum. je niedriger der Zeitstempel ist, desto weiter ist er in der Vergangenheit. –

+0

Dieser Zeitstempel ergibt sich in 11/25/45009, also ist er wahrscheinlich in Millisekunden definiert, was bedeutet, dass Sie ihn durch 1000 teilen müssen, um einen gültigen zu erhalten: 15-01-2013. Danke für deine Antwort! – Tomzie

Verwandte Themen