Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

muazzamazaz's avatar

Date format issue

I am using following code to change date format for saving it into database gotton in Json string

$input = $sensors_data["date"].' '.$sensors_data["time"]; 
echo $input ;
echo Carbon::createFromFormat('d/m/Y h:m:i',$input);

but it gives me wrong date

like

actual: 17/12/2019 03:55:10

output: 2023-07-17 03:10:00

0 likes
4 replies
uksarkar's avatar

I think first you have to parse the date to Carbon. The code should be like this:

$input = $sensors_data["date"].' '.$sensors_data["time"]; 
$date = Carbon::parse($input)->format('d/m/Y h:m:i');
muazzamazaz's avatar

Exception: DateTime::__construct(): Failed to parse time string (17/12/2019 03:55:10) at position 0 (1): Unexpected character in file

Nakov's avatar
Nakov
Best Answer
Level 73

@muazzamazaz played in Tinker:

$time = '17/12/2019 03:55:10';

Carbon\Carbon::createFromFormat('d/m/Y H:i:s', $time);

The output is:

Carbon\Carbon @1576554910 {#960
     date: 2019-12-17 03:55:10.0 UTC (+00:00),
   }

So the minute is i not m as m is reserved for month.

muazzamazaz's avatar

the format Carbon::createFromFormat('Y-m-d H:i:s',$input);

gives

Unexpected data found.

while its work for Carbon::createFromFormat('d/m/Y H:i:s', $time);

Please or to participate in this conversation.