我完全停留在嘗試使php api與角度前端交換日期。如何處理php(Laravel api)和javascript(AngularJS)之間的日期時間
從PHP到JS我似乎有它排序。由於Laravel通過碳處理日期我只是說\Carbon\Carbon::setToStringFormat('c');
到app.php這使得2012年新ISO 8601問世
PHP例子:
2015-02-04T00:53:51 + 02:00
AngularJS日期過濾器也似乎很好地理解這種格式,甚至正確地讀取時區。
我還沒有找到工作是將JS日期對象發回PHP api。
JS例如:
2015-02-05T13:00:00.000Z
的Javascript日期格式與添加到字符串,並以默認配置碳毫秒結束抱怨尾隨數據。
此外,瀏覽器似乎會自動將我的日期轉換爲UTC時間。
手動使用new Carbon('jsDateString')
似乎起初工作,但仔細檢查時區數據不考慮。
所以我的問題是什麼會是最好的和最自動的解決方案發回日期回到從AngularJS前端的Laravel php api?
JavaScript沒有時區的本地支持,這使得日期處理有時真的很煩人。你可能想看看http://momentjs.com/這是一個非常好的時間操作庫。本文(https://nulogy.com/articles/dealing-with-timezones-in-javascript#.VNNrpjbN-fY)也描述了這些問題,以及他們如何解決問題。祝你好運! – 2015-02-05 13:14:19
由於我使用LumX前端GUI框架,我認爲momentJs已經在那裏糾結了。如果我懷疑瀏覽器不會自動將我的時間轉換爲UTC,那麼時區甚至不會很重要。 感謝您的文章。我會通過它並報告回來。 – Priit 2015-02-05 13:25:33
@JoelHinz感謝您的鏈接。它對問題有很好的解釋,如何解決它也是很好的推理。但是由於實際上我對時區沒有興趣,但只是因爲在瀏覽器中輸入的日期以UTC的方式結束而被迫與它們打交道,所以我會考慮更簡單的時刻(datetime).format()解決方案。 – Priit 2015-02-05 14:02:13