227 of 410 menu

DateInterval Klassi

DateInterval klassi PHP-da vaqt intervallari bilan ishlash imkonini beradi. U ikki sana orasidagi farqni saqlash yoki sana bilan ishlash usullarida intervalni belgilash uchun ishlatiladi. Interval maxsus formatda yaratiladi.

Sintaksis

DateInterval::__construct(string $duration)

Interval formati

Format P (period) harfidan va elementlardan iborat:

P{y}Y{m}M{d}DT{h}H{m}M{s}S{w}W

Ushbu formatda: Y - yillar, M - oylar, D - kunlar, T - vaqt ajratgichi, H - soatlar, M - daqiqalar, S - soniyalar, W - haftalar.

Ushbu harflar oldiga mos keladigan qiymat yozilishi kerak. Masalan, 3Y uch yilni anglatadi, 5Y2M esa 5 yil va 2 oyni bildiradi.

Yaratilgandan so'ng, DateInterval obyekti quyidagi xususiyatlarni o'z ichiga oladi:

<?php $interval->y // yillar $interval->m // oylar $interval->d // kunlar $interval->h // soatlar $interval->i // daqiqalar $interval->s // soniyalar $interval->f // mikrosekundlar $interval->invert // 1 agar interval manfiy bo'lsa $interval->days // kunlar soni (agar diff() orqali yaratilgan bo'lsa) ?>

Keling, intervalning ishlashini misollar orqali ko'rib chiqaylik:

Misol

1 soat, 45 daqiqa va 30 soniyalik interval yaratamiz:

<?php $interval = new DateInterval('PT1H45M30S'); var_dump($interval); ?>

Kodni bajarish natijasi:

DateInterval Object ( 'y' => 0 'm' => 0 'd' => 0 'h' => 1 'i' => 45 's' => 30 )

Misol

3 hafta va 2 kunlik interval yaratamiz:

<?php $interval = new DateInterval('P3W2D'); var_dump($interval); ?>

Kodni bajarish natijasi:

DateInterval Object ( 'y' => 0 'm' => 0 'd' => 23 'h' => 0 'i' => 0 's' => 0 )

Misol

5 oy, 10 kun va 6 soatlik interval yaratamiz:

<?php $interval = new DateInterval('P5M10DT6H'); var_dump($interval); ?>

Kodni bajarish natijasi:

DateInterval Object ( 'y' => 0 'm' => 5 'd' => 10 'h' => 6 'i' => 0 's' => 0 )

Misol

2 yil va 15 daqiqalik interval yaratamiz:

<?php $interval = new DateInterval('P2YT15M'); var_dump($interval); ?>

Kodni bajarish natijasi:

DateInterval Object ( 'y' => 2 'm' => 0 'd' => 0 'h' => 0 'i' => 15 's' => 0 )

Misol

1 kun, 12 soat va 30 soniyalik interval yaratamiz:

<?php $interval = new DateInterval('P1DT12H30S'); var_dump($interval); ?>

Kodni bajarish natijasi:

DateInterval Object ( 'y' => 0 'm' => 0 'd' => 1 'h' => 12 'i' => 0 's' => 30 )

Misol

1 yil va 3 oylik manfiy interval yaratamiz (orqaga interval):

<?php $interval = new DateInterval('P1Y3M'); $interval->invert = 1; var_dump($interval); ?>

Kodni bajarish natijasi:

DateInterval Object ( 'y' => 1 'm' => 3 'd' => 0 'h' => 0 'i' => 0 's' => 0 'invert' => 1 )

Misol

2 soat, 30 daqiqalik manfiy interval yaratamiz (orqaga interval):

<?php $interval = new DateInterval('PT2H30M'); $interval->invert = 1; var_dump($interval); ?>

Kodni bajarish natijasi:

DateInterval Object ( 'y' => 0 'm' => 0 'd' => 0 'h' => 2 'i' => 30 's' => 0 'invert' => 1 )

Misol

Joriy sanaga interval qo'shamiz:

<?php $date = new DateTime('2023-01-01'); $interval = new DateInterval('P10D'); $date->add($interval); echo $date->format('Y-m-d'); ?>

Kodni bajarish natijasi:

'2023-01-11'

Misol

Ikki sana orasidagi farqni hisoblaymiz:

<?php $date1 = new DateTime('2023-01-01'); $date2 = new DateTime('2023-02-15'); $interval = $date1->diff($date2); echo $interval->format('%m oy %d kun'); ?>

Kodni bajarish natijasi:

'1 oy 14 kun'

Yana qarang

Oʻzbek
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекTiếng Việt
Biz sayt ishlashi, tahlil qilish va shaxsiylashtirish uchun cookie-fayllardan foydalanamiz. Ma'lumotlarni qayta ishlash Maxfiylik siyosatiga muvofiq amalga oshiriladi.
hammasini qabul qilish sozlash rad etish