Добавление секунд с Carbon

Идея состоит в том, что мне нужно получить end_date от аукциона через эту модель, которая находится внутри базы данных, в формате отметки времени MySQL (я использую phpmyadmin, если это имеет значение, например, 2018-11-14 04:58:07). Поэтому, когда я получаю end_date, идея состоит в том, чтобы увеличить его на несколько секунд (например, 10 секунд) с помощью функции Carbon addSeconds (), а затем снова записать в базу данных. Вот контроллер, где это сделано, и моя модель аукциона.
Что происходит, что я получаю FatalThrowableError «Вызов функции-члена addSeconds () на целое число». Я много играл и не могу найти правильный формат для переменной secs2.

Auction.php

public $id;
public $name;
public $descript;
public $price;
public $pic;
public $end_date;
public $offers;
public $offered_by;

public function get(){
$result =
DB::table('auctions')
->select('*')
->where('id', '=', $this->id)
->first();
return $result;
}

public function increment($id){
$result =
DB::table('auctions')
->where('id', $id)
->update([
'offers' => DB::raw('offers + 1'),
'end_date' => $this->end_date
]);
return $result;
}

AuctionController.php

    public function offer($id, Request $request){
$auction = new Auction();
$auction->id = $id;

$secs = $auction->get()->end_date;
$secs2 = strtotime($secs);
$secs2->addSeconds(120);

$auction->end_date = $secs2;
//dd($secs2);

$auction->increment($id);
}

0

Решение

Если вы хотите использовать addSeconds метод, вы не можете сначала преобразовать свое время в число ..
например:

Carbon::parse($auction->get()->end_date)->addSeconds(120)->format('H:i:s');
1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector