DekGenius.com
PHP
php difference between two dates in years months and days
//get Date diff as intervals
$d1 = new DateTime("2018-01-10 00:00:00");
$d2 = new DateTime("2019-05-18 01:23:45");
$interval = $d1->diff($d2);
$diffInSeconds = $interval->s; //45
$diffInMinutes = $interval->i; //23
$diffInHours = $interval->h; //8
$diffInDays = $interval->d; //21
$diffInMonths = $interval->m; //4
$diffInYears = $interval->y; //1
//or get Date difference as total difference
$d1 = strtotime("2018-01-10 00:00:00");
$d2 = strtotime("2019-05-18 01:23:45");
$totalSecondsDiff = abs($d1-$d2); //42600225
$totalMinutesDiff = $totalSecondsDiff/60; //710003.75
$totalHoursDiff = $totalSecondsDiff/60/60;//11833.39
$totalDaysDiff = $totalSecondsDiff/60/60/24; //493.05
$totalMonthsDiff = $totalSecondsDiff/60/60/24/30; //16.43
$totalYearsDiff = $totalSecondsDiff/60/60/24/365; //1.35
Get the number of days between two dates in PHP
$startDate = new DateTime("2019-10-27");
$endDate = new DateTime("2020-04-11");
$difference = $endDate->diff($startDate);
echo $difference->format("%a");
how to calculate days difference between two dates in php
// how to calculate days difference between two dates in laravel
use DateTime; // inside Controller Class
$startDate = new DateTime($request->start_date);
$endDate = new DateTime($request->end_date);
$daysDifference = ($startDate->diff($endDate)->days);
get 2 days before date in php
date('Y/m/d',strtotime("-1 days"));
Or Use DateTime class like this-
$date = new DateTime();
echo $date->modify("-1 days")->format('Y-m-d');
php get date between two dates
$period = new DatePeriod(
new DateTime('2010-10-01'),
new DateInterval('P1D'),
new DateTime('2010-10-05')
);
//Which should get you an array with DateTime objects.
//To iterate
foreach ($period as $key => $value) {
//$value->format('Y-m-d')
}
php Calculate the number of months between two dates
$date1 = '2000-01-25';
$date2 = '2010-02-20';
$ts1 = strtotime($date1);
$ts2 = strtotime($date2);
$year1 = date('Y', $ts1);
$year2 = date('Y', $ts2);
$month1 = date('m', $ts1);
$month2 = date('m', $ts2);
$diff = (($year2 - $year1) * 12) + ($month2 - $month1);
find days with name between two dates in php
$from_date ='01-01-2013';
$to_date ='05-01-2013';
$from_date = new DateTime($from_date);
$to_date = new DateTime($to_date);
for ($date = $from_date; $date <= $to_date; $date->modify('+1 day')) {
echo $date->format('l') . "
";
}
Number of week days between two dates in php
You are given two string (dd-mm-yyyy) representing two date,
you have to find number of all weekdays present in between given dates.
function number_of_days($days, $start, $end) {
$start = strtotime($start); $end = strtotime($end);
$w = array(date('w', $start), date('w', $end));
$x = floor(($end-$start)/604800);
$sum = 0;
for ($day = 0;$day < 7;++$day) {
if ($days & pow(2, $day)) {
$sum += $x + ($w[0] > $w[1]?$w[0] <= $day || $day <= $w[1] : $w[0] <= $day && $day <= $w[1]);
}
}
return $sum;
}
function getWeeklyDayNumbers($startDate, $endDate) {
$weekdays = array('monday' => 0, 'tuesday' => 0, 'wednesday' => 0, 'thursday' => 0, 'friday' => 0, 'saturday' => 0, 'sunday' => 0);
$weekdays['monday'] += number_of_days(0x02, $startDate, $endDate); // MONDAY
$weekdays['tuesday'] += number_of_days(0x04, $startDate, $endDate); // TUESDAY
$weekdays['wednesday'] += number_of_days(0x08, $startDate, $endDate); // WEDNESDAY
$weekdays['thursday'] += number_of_days(0x10, $startDate, $endDate); // THURSDAY
$weekdays['friday'] += number_of_days(0x20, $startDate, $endDate); // FRIDAY
$weekdays['saturday'] += number_of_days(0x40, $startDate, $endDate); // SATURDAY
$weekdays['sunday'] += number_of_days(0x01, $startDate, $endDate); // SUNDAY
return $weekdays;
}
$weekdays = getWeeklyDayNumbers('01-01-2021', '31-01-2021');
print_r($weekdays);exit;
get number of days between two dates php
//get Date diff as intervals
$d1 = new DateTime("2018-01-10 00:00:00");
$d2 = new DateTime("2019-05-18 01:23:45");
$interval = $d1->diff($d2);
$diffInSeconds = $interval->s; //45
$diffInMinutes = $interval->i; //23
$diffInHours = $interval->h; //8
$diffInDays = $interval->d; //21
$diffInMonths = $interval->m; //4
$diffInYears = $interval->y; //1
get number of days between two dates php
$now = time(); // or your date as well
$your_date = strtotime("2010-01-31");
$datediff = $now - $your_date;
echo round($datediff / (60 * 60 * 24));
php get all days between two dates
$period = new DatePeriod(
new DateTime('2010-10-01'),
new DateInterval('P1D'),
new DateTime('2010-10-05')
);
foreach ($period as $key => $value) {
//$value->format('Y-m-d')
}
© 2022 Copyright:
DekGenius.com