Aplikasi fungsi PHP untuk mengira berapa hari yang ada sehingga hari tertentu dalam bulan tertentu dalam tahun tertentu

青灯夜游
Lepaskan: 2023-03-12 07:26:01
asal
2800 orang telah melayarinya

Dalam artikel sebelumnya "Cara mengira jumlah hari untuk tahun, bulan dan hari tertentu melalui PHP", kami memperkenalkan kaedah untuk mengira jumlah hari untuk tahun tertentu, bulan dan hari. Kali ini kami akan memudahkan kaedah dan menunjukkan kepada anda cara mengira jumlah hari dengan bantuan fungsi strtotime().

Topik artikel ini ialah: diberi tahun, bulan dan hari, kira jumlah bilangan hari sehingga hari ini.

Bagaimana untuk mengira ini? Jika anda tidak mempunyai apa-apa idea, mari kita ubah arah dan mudahkan ia bukan untuk mencari bilangan hari antara 1 Januari, tahun x - hari x, bulan x, tahun x, iaitu untuk mencari. perbezaan masa antara dua tarikh. Jadi bagaimana untuk mencari perbezaan masa?

Kita perlu terlebih dahulu menukar dua tarikh: 1 Januari, x tahun dan x bulan x hari, x tahun menjadi cap masa

$startdate = strtotime("{$year}-01-01");
$enddate = strtotime("{$year}-{$month}-{$day}");
Salin selepas log masuk

Kemudian tolak dua cap waktu (Masa tamat - masa mula )

$diff_seconds = $enddate-$startdate;
Salin selepas log masuk

Ini akan mendapat perbezaan masa antara dua tarikh, tetapi pada masa ini ia masih dikira dalam saat, yang tidak kondusif untuk membaca.

Oleh kerana terdapat 24 jam dalam sehari, 60 minit dalam satu jam dan 60 saat dalam satu minit, tukarkan 24*60*60=86400, jadi terdapat 86,400 saat dalam sehari.

Bahagikan perbezaan masa $diff_seconds dengan 86400 dan gunakan floor() untuk membundarkan ke bawah kepada integer terdekat

$time = floor(($diff_seconds)/86400);
Salin selepas log masuk

Apa yang anda perolehi pada masa ini ialah perbezaan hari, tidak termasuk x bulan Pada hari tersebut

Mari kita lihat kod lengkap:

function GetDays($year,$month,$day){
	$startdate = strtotime("{$year}-01-01");
	$enddate = strtotime("{$year}-{$month}-{$day}");
	$diff_seconds = $enddate-$startdate;
	$time = floor(($diff_seconds)/86400);
	$day = $time+1;
	echo "截止{$year}-{$month}-{$day} 共有 {$day} 天<br>";
}
Salin selepas log masuk

Uji: Kira jumlah bilangan hari pada 2000-3-5 (kerana 2000 ialah tahun lompat, jadi 31 29 5=65)

GetDays(2000,3,5);
Salin selepas log masuk

Hasil output ialah:

Aplikasi fungsi PHP untuk mengira berapa hari yang ada sehingga hari tertentu dalam bulan tertentu dalam tahun tertentu

OK, jumlah bilangan hari adalah betul! Menggunakan fungsi GetDays($year,$month,$day), kita juga boleh mengira jumlah hari dalam setahun

GetDays(2000,12,31);
GetDays(2021,12,31);
Salin selepas log masuk

Hasil output ialah:

Aplikasi fungsi PHP untuk mengira berapa hari yang ada sehingga hari tertentu dalam bulan tertentu dalam tahun tertentu

Baiklah, itu sahaja buat masa ini. Jika anda ingin tahu apa-apa lagi, anda boleh klik di sini. → →tutorial video php

Atas ialah kandungan terperinci Aplikasi fungsi PHP untuk mengira berapa hari yang ada sehingga hari tertentu dalam bulan tertentu dalam tahun tertentu. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan