How to convert days into human-readable weeks and days in PHP

2 Answers

0 votes
$days = 26;

$str = sprintf("%d Weeks, %d days", intdiv($days, 7), $days % 7);

echo $str;
  
     
/*
run: 
  
3 Weeks, 5 days
  
*/

 



answered Jun 26, 2024 by avibootz
0 votes
// Convert total days into a human‑readable "X weeks and Y days" string
function toReadableWeeksDays(int $totalDays): string {
    $weeks = intdiv($totalDays, 7);   // whole weeks
    $days  = $totalDays % 7;          // leftover days

    return sprintf(
        "%d week%s and %d day%s",
        $weeks,
        $weeks === 1 ? "" : "s",
        $days,
        $days === 1 ? "" : "s"
    );
}

$days = 26;

echo toReadableWeeksDays($days) . PHP_EOL;




/*
run:

3 weeks and 5 days

*/

 



answered Dec 31, 2025 by avibootz

Related questions

...