-3

I have following Array:

object(stdClass)#3137 (10) {
    ["start"]=>
    string(25) "2019-10-18T18:02:00+02:00"
    ["end"]=>
    string(25) "2019-10-18T21:02:00+02:00"
}

how can I split "start" and "end" into two variables, first contains the date (as date, not string), second contains the time(as time not string) and insert in the same array?

Thanks vor any help.

Esther
  • 1
  • Does this answer your question? [PHP Parse Date String](https://stackoverflow.com/questions/1279061/php-parse-date-string) – Benjamin Oct 13 '20 at 21:17

2 Answers2

0

You can use the date() function with strtotime() like this

$oldArray = object(stdClass)#3137 (10) {
    ["start"]=>
    string(25) "2019-10-18T18:02:00+02:00"
    ["end"]=>
    string(25) "2019-10-18T21:02:00+02:00"
}

$newArray["startDate"] = date("Y-m-d", strtotime($oldArray["start"]);
$newArray["startTime"] = date("H-i-sO", strtotime($oldArray["start"]);

And repeat for end

See this link for more date & time options

Moshe Gross
  • 1,206
  • 1
  • 7
  • 14
0
$startEndObject = //your object with start and end...

$array = [
  "start" => [
    "date" => $startEndObject->start,
    "time" => strtotime($startEndObject->start)
  ],
  "end" => [
    "date" => $startEndObject->end,
    "time" => strtotime($startEndObject->end)
  ],
]

So what you basically do with that is you create a array which has your start and end, but you add an array to start and end, which contains date as string, and time as an timestamp.