Behandele datetime zwischen php (Laravel API) und javascript (AngularJS)

8

Ich versuche, dass meine Laravel-API Termine mit meinem Angularjs-Frontend austauscht.

Es funktioniert von Laravel zu JS, indem zuerst mein mysql datetime Initialwert konvertiert wird:

%Vor%

mit $newdate = Carbon::parse($event['date'])->toATOMString(); , die Ausgaben:

%Vor%

, und konvertiert es später in ein Javascript-Datumsobjekt (Angularjs) mit event.date = new Date(event.date); , das Folgendes ausgibt:

%Vor%

Problem : Veröffentlichen meines aktualisierten Javascript-Datumsobjekts zurück zu meiner PHP-API , um den Wert in mysql db (datetime) zu aktualisieren. Carbon mag das Datumsformat nicht, das er zurückbekommt:

%Vor%

Und ich bin mir nicht sicher, wie ich damit umgehen soll. Ich erhalte den folgenden Fehler von meinem Laravel-Protokoll: exception 'InvalidArgumentException' with message 'Trailing data' … Carbon/Carbon.php:392

Frage : Wie soll ich das oben formatierte Datum in PHP konvertieren, damit Carbon es akzeptiert?

Ich muss keine Sekunden aufnehmen, daher behandelt mein Laravel-Modell Daten wie folgt:

%Vor%

Folgendes habe ich bis jetzt (ohne Erfolg) versucht. Ich vermisse offensichtlich etwas und bin mir nicht sicher, was ich mache.

%Vor%     
user3489502 20.08.2015, 15:16
quelle

1 Antwort

0

Ursprünglich von fragframe himeself gepostet, aber er hat die Antwort in die Frage selbst geschrieben, also hier bearbeite ich die Frage, um mehr Sinn zu machen Er schrieb:

Ich gehe es endlich.

Nachdem ich meine Datetime in meinem AngularJS-Frontend aktualisiert und mein JS-Date-Objekt zurück an meine PHP-API gesendet habe, konnte ich nicht herausfinden, wie man das folgende Datumsformat verwendet:

%Vor%

Ich habe immer die Ausnahme erhalten

  

'InvalidArgumentException' mit der Nachricht 'Trailing data' ...   Carbon / Carbon.php: 392 Fehler.

Ich habe es versucht

%Vor%

aber das hat nicht funktioniert. Nachdem ich erkannt hatte, dass mein Laravel-Modell das folgende Datetime-Format Y-m-d H:i erwartet hatte, musste ich die von JS empfangene Datetime doppelt formatieren.

%Vor%

Nicht sicher, es ist der beste Weg, es zu tun, aber es funktioniert für jetzt.

    
Mr. Pyramid 02.10.2017, 18:14
quelle