Я не могу сохранить строковые переменные внутри строковой переменной

Я работаю над проектом Laravel, и у меня есть следующий код, в котором я должен создать часы, а затем сохранить их в переменной в массиве, прежде чем сделать это, я изменяю объект DateTime на строку с помощью метода format () но выдает мне следующее исключение

Код:

    //crea un objecto
   $date = new DateTime('08:00');
   // devuelve un string
   $date->format('H:i:s');

   //crea un objecto
   $date2 = new DateTime('09:00');
   $date2->modify('+5 minute');
   // devuelve un string
   $date2->format('H:i:s');

   $block = "$date - $date2";

   return $block;

Исключение:

ErrorException
Object of class DateTime could not be converted to string

Убедитесь, что метод format () Я возвратил строку, выполнив:

return gettype($date);

И вывод - строка , и все же он не позволяет мне сохранить $ date и $ date2 внутри $ block, так как он вызывает исключение, упомянутое выше.

2
задан 29.11.2019, 22:40
1 ответ

Тебе не хватает sobreescribir стоимости переменной с информацией тип string.

//crea un objecto
$date = new DateTime('08:00');
// $date->format('H:i:s') devuelve un string pero debes guardarlo en la variable
$date = $date->format('H:i:s');

//crea un objecto
$date2 = new DateTime('09:00');
$date2->modify('+5 minute');
// $date2->format('H:i:s') devuelve un string pero debes guardarlo en la variable
$date2 = $date2->format('H:i:s');

// luego todo bien
$block = "$date - $date2";

return $block;
2
ответ дан 01.12.2019, 10:34