parfum/app/Helpers/DateTimeHelpers.php
2025-09-19 14:52:02 +07:00

45 lines
1.1 KiB
PHP

<?php
use Carbon\Carbon;
if (! function_exists('formatDate')) {
function formatDate(?string $date = null, ?string $format = 'l, d M Y'): string
{
return ! $date ? '-' : Carbon::parse($date)->translatedFormat($format);
}
}
if (! function_exists('formatDateTime')) {
function formatDateTime(string $dateTime): string
{
return Carbon::parse($dateTime)->translatedFormat('l, d M Y H:i:s');
}
}
if (! function_exists('formatDateDash')) {
function formatDateDash(string $date): string
{
return Carbon::parse($date)->translatedFormat('Y-m-d');
}
}
if (! function_exists('timeAgo')) {
function timeAgo(?string $date = null): string
{
return ! $date ? '-' : Carbon::parse($date)->diffForHumans();
}
}
if (! function_exists('normalizeOpeningHours')) {
function normalizeOpeningHours(array $openingHours)
{
$days = ['senin', 'selasa', 'rabu', 'kamis', 'jumat', 'sabtu', 'minggu'];
return collect($days)
->mapWithKeys(fn ($day) => [
$day => $openingHours[$day] ?? ['open' => null, 'close' => null],
])
->toArray();
}
}