<?php
function getWeeksInMonth($weekStartDay = 1)
{
$date = new \Datetime('2015-03-01');
// Total number of days in the given month.;
$numberOfDays = $date->format("t");
// Count the number of times it hits $weekStartDay.
$numberOfWeeks = 1;
for ($i = 1; $i <= $numberOfDays; $i++) {
$nextDay = $date->add(new \DateInterval('P1D'));
$dayOfWeek = $nextDay->format('w');
if ($dayOfWeek == $weekStartDay) {
$numberOfWeeks++;
}
}
return $numberOfWeeks;
}
echo getWeeksInMonth();