Pertanyaan Bagaimana menghitung jumlah hari dalam setiap bulan di php


perlu menghitung jumlah hari dari tanggal saat ini hingga 27 setiap bulan dalam PHP Di bawah kode, itu menghitung dengan benar untuk bulan saat ini tetapi jika tanggal saat ini adalah 28, itu harus menghitung untuk bulan depan.

$year = date("y");
$month = date("m");
$day = '27';

$current_date = new DateTime(date('Y-m-d'), new DateTimeZone('Asia/Dhaka'));
$end_date = new DateTime("$year-$month-$day", new DateTimeZone('Asia/Dhaka'));
$interval = $current_date->diff($end_date);
echo $interval->format('%a day(s)');

5
2018-06-22 06:45


asal


Jawaban:


Saya menulis skrip ini dengan cepat, karena saya tidak punya waktu untuk mengujinya.

EDIT:

$day = 27;
$today = date('d');

if($today < $day){
    $math = $day - $today;
    echo "There are " . $math . " days left until the 27th.";
} else {
    $diff = date('t') - $today;

    $math = $diff + $day;
    echo "There are " . $math . " days left until the 27th of the next month.";
}

2
2018-06-22 06:56



Coba php cal_days_in_month fungsi

cal_days_in_month — Return the number of days in a month for a given year and calendar

Ex:

$number = cal_days_in_month(CAL_GREGORIAN, 8, 2003); // 31
echo "There were {$number} days in August 2003";

Referensi


5
2018-06-22 06:48



Coba kode di bawah ini,

<?php
    $year = date("y");
    $month = date("m");
    $day = '27';

    $current_date = new DateTime(date('Y-m-d'), new DateTimeZone('Asia/Dhaka'));
    $end_date = new DateTime("$year-$month-$day", new DateTimeZone('Asia/Dhaka'));
    if($current_date->getTimestamp()<=$end_date->getTimestamp()){
        $interval = $current_date->diff($end_date);
        echo $interval->format('%a day(s)');
    }
    else{
        $interval = $end_date->diff($current_date);
        echo $interval->format('-%a day(s)');
    }
?>

1
2018-06-22 07:00



$now = time(); // or your date as well
$your_date = strtotime("2010-01-01");
$datediff = $now - $your_date;

echo floor($datediff / (60 * 60 * 24));

Sumber: Menemukan jumlah hari di antara dua tanggal


0
2018-06-22 06:57



dengan ini....

<?php
  $d=cal_days_in_month(CAL_GREGORIAN,10,2005);
  echo "There was $d days in October 2005";
?>

-1
2018-06-22 06:49