php week number of month code example

Example 1: php week of a date

Things to be aware of when using week numbers with years.

<?php
echo date("YW", strtotime("2011-01-07")); // gives 201101
echo date("YW", strtotime("2011-12-31")); // gives 201152
echo date("YW", strtotime("2011-01-01")); // gives 201152 too
?>

BUT

<?php
echo date("oW", strtotime("2011-01-07")); // gives 201101
echo date("oW", strtotime("2011-12-31")); // gives 201152
echo date("oW", strtotime("2011-01-01")); // gives 201052 (Year is different than previous example)
?>

Reason:
Y is year from the date
o is ISO-8601 year number
W is ISO-8601 week number of year

Conclusion:
if using 'W' for the week number use 'o' for the year.

Example 2: get day of month php

// get day of month php
// Method 1; some server not work, I had check php 7.3.24 not worked, php 7.3.8 worked
cal_days_in_month(CAL_GREGORIAN, $month, $year)
echo (cal_days_in_month(CAL_GREGORIAN, 2, 2020)); // => 29

// Method 2;
function days_in_month($month, $year) {
    // calculate number of days in a month
    return $month == 2 ? ($year % 4 ? 28 : ($year % 100 ? 29 : ($year % 400 ? 28 : 29))) : (($month - 1) % 7 % 2 ? 30 : 31);
}

// Method 3;
echo (date('t', strtotime('2020-02-1')));	// 29

Tags:

Php Example