我试图从 session_start 列的数据库中获取 $booking_start_formatted 和 $booking_end 之间的数据,但它仅选择 $booking_start_formatted 以下的数据
public function store(Request $request, Utils $utils)
{
$request->validate([
"user_id" => "required|int",
"booking_start" => "required",
]);
try {
$booking_start = Carbon::parse($request->get("booking_start"));
$booking_start_formatted = $booking_start->format("Y-m-d H:i:s");
$booking_end = $booking_start->addMinute(45)->format("Y-m-d H:i:s");
$booking = Bookings::query()->whereBetween("session_start", [$booking_start_formatted, $booking_end])->get();
return $utils->message("error",$booking , 400);
}catch (\Throwable $e) {
// Do something with your exception
return $utils->message("error", $e->getMessage() , 400);
}
}
我的时间戳格式是 2024-03-31 06:35:13
您需要克隆
Carbon
对象或更改为不可变对象。 Carbon 默认是一个可变对象。
使用
copy
方法
$booking_end = $booking_start->copy()->addMinute(45)->format("Y-m-d H:i:s");
看看这个 Stack Overflow 帖子,同样的问题 https://stackoverflow.com/a/49905830/11836673