I'm trying to parse a date formated like :
2017-09-20T10:59:10.0000000 01:00
I'm using Carbon, so i tried :
Carbon::createFromFormat('Y-m-dTH:i:s.u vP', $date)
Which output :
The timezone could not be found in the database\n
Unexpected data found.\n
Data missing
I guess the last timezone argument maybe wrong but i couldn't find how to parse that date format :/
Thanks for help !
Carbon::parse($client->db)->format('d/m/y'); is probably what you're wanting. (parse the yyyy-mm-dd date in the database as a date, and convert it to d/m/y format).
$date = Carbon\Carbon::parse($rawDate); well thats it. You'll now have a Carbon instance & you can format the date as you like using Carbon helper functions.
You'll need to add a sign to the timezone, for example:
+01:00
Then this will work for you:
Carbon::createFromFormat('Y-m-d\TH:i:s.0000000 P', $date)
If your string can have -01:00
but instead of +01:00
you're getting 01:00
, do this first:
$timezone = str_after($date, ' ');
if ($timezone[0] !== '-') {
$date = str_before($date, ' ') . ' +' . $timezone;
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With