A veces, laravel establece la fecha 1970 cuando el valor es nulo, ¿es posible guardar el valor como NULL en lugar de 01-01-1970?
'start_date' => date('Ym-d', strtotime($request->input('start_date'))), 'end_date' => $request->has('end_date') ? date('Ym-d', strtotime($request->input('end_date'))) : NULL,Este código no funciona.
¿Cómo puedo solucionarlo?
En MySQL, si el formato de fecha no está completo o no es válido, se establece en el valor predeterminado.
Actualice su función de fecha para incluir la hora, si tiene un campo de fecha y hora, también debe pasar una hora.
date("Ymd H:i:s");
'start_date' => date('Ymd H:i:s', strtotime($request->input('start_date'))), 'end_date' => $request->has('end_date') ? date('Ymd H:i:s', strtotime($request->input('end_date'))) : NULL,Según esta respuesta en Laravel 5.5+
$request->exists : Alias para $request->has
$request->has : determina si la solicitud contiene una clave de elemento de entrada determinada.
$request->filled : determine si la solicitud contiene un valor no vacío para un elemento de entrada.
Todo lo que necesita: el cambio has filled :
'end_date' => $request->filled('end_date') ? date('Ymd H:i:s', strtotime($request->input('end_date'))) : NULL,Por favor, intente el siguiente código
Necesita verificar si la solicitud está disponible y luego convertirla a tiempo
'start_date' =>$request->has('start_date') ? date('Ym-d', strtotime($request->input('start_date'))) : NULL,
'fecha_final' => $solicitud->has('fecha_final') ? date('Ym-d', strtotime($request->input('end_date'))) : NULL,