Tutorials, PHP & MySQL

Using php's date function you can get all sorts of date combinations including finding the week commencing date for any date.

The following function takes a date and returns the previous Monday's date.

function last_monday($date) {
    if (!is_numeric($date))
        $date = strtotime($date);
    if (date('w', $date) == 1)
        return $date;
    else
        return strtotime('last monday',$date);
}

Using this function is simple, pass a call to the function inside a date to format the date as desired.

$date = date('Y-m'd');
echo date('jS M', last_monday($date));

To get the week number for the current date is also very simple:

echo date("W");

To get the week number for a custom date, use date combined with strtotime:

$date = '2013-01-10';
echo date('W', strtotime($date));