Всем привет! Очень интересная проблема появилась. Имеется метод, который принимает объект Point.
private function removeIntervals(Point $item, $service)
{
...
...
// dd($service, $item->getDate());
$timeWork = $item->getStartTime()->diff($item->getEndTime());
$startTime = $item->getStartTime(); // Метод getStartTime() возвращает время 13:00 и присваивается переменной startTime
$endTime = $item->getEndTime();
$subTime = $startTime->sub($timeWork); // А тут получается, что в переменную subTime ставиться значение startTime но с некими вычислениями
$addTime = $endTime->add($timeWork);
}
И в результате получается , что в объекте Point метод getStartTime() будет возвращать мне уже 12:10, а не 13:00
Я понимаю, что произошли некие операции в значения поменялись. Но почему в переменной startTime значение изменилось? Потому что тут везде все работает по ссылкам? Но как мне сделать, чтоб в startTime было постоянно 13:00, потому что в результате в startTime тоже будет 12:10. Объясните плиз, что не так с php или моими руками?))