Umwandeln, Datetime PHP

Ich habe eine datetime-Zeichenfolge als solche 14/04/2014 4:57:16 PM und ich bin mit carbon datetime zu arbeiten.

Allerdings, sobald ich versuche, dies zu tun

$dt = Carbon::createFromTimestampUTC($encDateTime);

Allerdings bin ich immer der parse-Fehler aufgetreten : DateTime::__construct(): Failed to parse time string (@14/04/2014 5:03:45 PM ) an position 3 (/): Unexpected character.

Udpate :
Ich habe versucht, dies zu tun :

$date = DateTime::createFromFormat('d/m/Y H:i A', $encDateTime);
dd($date->format('Y-m-d H:i:s'));

und bekomme ich die folgende Fehlermeldung
Rufen Sie an eine member-Funktion format() on a non-object

Können Sie mir bitte helfen mit diesem?

Dank

  • Was bedeutet var_dump($encDateTime); Ausgang?
  • es gibt diese : 14/04/2014 4:57:16 PM
  • var_dump() würde nie zurückkehren. Was ist die genaue Ausgabe?
  • auch ich könnte mich irren aber in deinem update, das Sie verwendet, H was bedeutet eine 2-stellige Stunde, anstelle von h - und dies könnte Folge in die Zeichenfolge nicht korrekt analysiert
  • Ich bin ziemlich sicher, dass seine Rückkehr mich diese : string(22) "14/04/2014 5:13:18 Uhr" .. Wenn Sie könnten bitte lassen Sie mich wissen, was Sie erwartet hatten, vielleicht kann ich dann liefern relevante Antworten - danke
  • Auch vergessen die Sekunden. Versuchen 'd/m/Y H:i:s A'
  • Dort gehen Sie. Sie haben einen extra Raum am Ende des datetime-Zeichenfolge. Versuchen Sie dies: $date = DateTime::createFromFormat('d/m/Y H:i A', trim($encDateTime));.
  • wenn ich versuche, dass es code gibt mir Falsch.. 🙁
  • UTC ist ein Zeit-zone, kein format.
  • Haben Sie versucht, die Kleinbuchstaben h, ich.e-DateTime::createFromFormat('d/m/Y h:i:s A', trim($encDateTime)); H steht für eine zweistellige Stundenangabe wie ich schon sagte, vor 10 Minuten. Ich habe bereits getestet und bewiesen.

InformationsquelleAutor Gagan | 2014-04-14
Schreibe einen Kommentar