227 of 410 menu

DateInterval Sınıfı

DateInterval sınıfı, PHP'de zaman aralıklarıyla çalışmanızı sağlar. İki tarih arasındaki farkı saklamak veya tarih işlemleri yöntemlerinde bir aralık belirtmek için kullanılır. Aralık, özel bir biçimde oluşturulur.

Sözdizimi

DateInterval::__construct(string $duration)

Aralık Biçimi

Biçim, P (period) harfi ve aşağıdaki öğelerden oluşur:

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

Bu biçimde: Y - yıllar, M - aylar, D - günler, T - zaman ayırıcı, H - saatler, M - dakikalar, S - saniyeler, W - haftalar.

Bu harflerin önüne ilgili değer yazılmalıdır. Örneğin, 3Y üç yıl anlamına gelirken, 5Y2M 5 yıl ve 2 ay anlamına gelir.

Oluşturulduktan sonra DateInterval nesnesi aşağıdaki özellikleri içerecektir:

<?php $interval->y // yıllar $interval->m // aylar $interval->d // günler $interval->h // saatler $interval->i // dakikalar $interval->s // saniyeler $interval->f // mikrosaniyeler $interval->invert // 1 eğer aralık negatifse $interval->days // gün sayısı (eğer diff() ile oluşturulduysa) ?>

Aralığın çalışmasını örneklerle inceleyelim:

Örnek

1 saat, 45 dakika ve 30 saniyelik bir aralık oluşturalım:

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

Kodun çalıştırma sonucu:

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

Örnek

3 hafta ve 2 günlük bir aralık oluşturalım:

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

Kodun çalıştırma sonucu:

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

Örnek

5 ay, 10 gün ve 6 saatlik bir aralık oluşturalım:

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

Kodun çalıştırma sonucu:

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

Örnek

2 yıl ve 15 dakikalık bir aralık oluşturalım:

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

Kodun çalıştırma sonucu:

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

Örnek

1 gün, 12 saat ve 30 saniyelik bir aralık oluşturalım:

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

Kodun çalıştırma sonucu:

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

Örnek

1 yıl ve 3 aylık negatif bir aralık oluşturalım (geriye doğru aralık):

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

Kodun çalıştırma sonucu:

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

Örnek

2 saat, 30 dakikalık negatif bir aralık oluşturalım (geriye doğru aralık):

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

Kodun çalıştırma sonucu:

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

Örnek

Mevcut tarihe bir aralık ekleyelim:

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

Kodun çalıştırma sonucu:

'2023-01-11'

Örnek

İki tarih arasındaki farkı hesaplayalım:

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

Kodun çalıştırma sonucu:

'1 ay 14 gün'

Ayrıca Bakınız

Türkçe
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenЎзбекOʻzbekTiếng Việt
Web sitesinin çalışması, analiz ve kişiselleştirme için çerezleri kullanıyoruz. Veri işleme, Gizlilik Politikası'na uygun olarak gerçekleşir.
tümünü kabul et özelleştir reddet