227 of 410 menu

კლასი DateInterval

კლასი DateInterval საშუალებას აძლევს მუშაობდეს დროის ინტერვალებთან PHP-ში. იგი გამოიყენება ორ თარიღს შორის სხვაობის შესანახად ან ინტერვალის დასაყენებლად თარიღებთან მუშაობის მეთოდებში. ინტერვალი იქმნება სპეციალურ ფორმატში.

სინტაქსი

DateInterval::__construct(string $duration)

ინტერვალის ფორმატი

ფორმატი შედგება ასო P (period) და ელემენტებისგან:

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

ამ ფორმატში: Y - წლები, M - თვეები, D - დღეები, T - დროის გამყოფი, H - საათები, M - წუთები, S - წამები, W - კვირები.

ამ ასოებამდე საჭიროა ჩაწეროთ შესაბამისი მნიშვნელობა. მაგალითად, 3Y ნიშნავს სამ წელს, ხოლო 5Y2M აღნიშნავს 5 წელს და 2 თვეს.

შექმნის შემდეგ ობიექტი DateInterval შეიცავს შემდეგ თვისებებს:

<?php $interval->y // წლები $interval->m // თვეები $interval->d // დღეები $interval->h // საათები $interval->i // წუთები $interval->s // წამები $interval->f // მიკროწამები $interval->invert // 1 თუ ინტერვალი უარყოფითია $interval->days // დღეების რაოდენობა (თუ შეიქმნა diff()-ის მეშვეობით) ?>

მოდით ვნახოთ ინტერვალის მუშაობა მაგალითებზე:

მაგალითი

შევქმნათ ინტერვალი 1 საათის, 45 წუთის და 30 წამის ტოლი:

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

კოდის შესრულების შედეგი:

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

მაგალითი

შევქმნათ ინტერვალი 3 კვირის და 2 დღის ტოლი:

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

კოდის შესრულების შედეგი:

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

მაგალითი

შევქმნათ ინტერვალი 5 თვის, 10 დღის და 6 საათის ტოლი:

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

კოდის შესრულების შედეგი:

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

მაგალითი

შევქმნათ ინტერვალი 2 წლის და 15 წუთის ტოლი:

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

კოდის შესრულების შედეგი:

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

მაგალითი

შევქმნათ ინტერვალი 1 დღის, 12 საათის და 30 წამის ტოლი:

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

კოდის შესრულების შედეგი:

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

მაგალითი

შევქმნათ უარყოფითი ინტერვალი 1 წლის და 3 თვის ტოლი (ინტერვალი უკან):

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

კოდის შესრულების შედეგი:

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

მაგალითი

შევქმნათ უარყოფითი ინტერვალი 2 საათის, 30 წუთის ტოლი (ინტერვალი უკან):

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

კოდის შესრულების შედეგი:

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

მაგალითი

მიმდინარე თარიღს დავუმატოთ ინტერვალი:

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

კოდის შესრულების შედეგი:

'2023-01-11'

მაგალითი

გამოვთვალოთ სხვაობა ორ თარიღს შორის:

<?php $date1 = new DateTime('2023-01-01'); $date2 = new DateTime('2023-02-15'); $interval = $date1->diff($date2); echo $interval->format('%m თვე %d დღე'); ?>

კოდის შესრულების შედეგი:

'1 თვე 14 დღე'

იხილეთ აგრეთვე

  • კლასი DateTime,
    რომელიც წარმოადგენს თარიღს და დროს
  • კლასი DateTimeZone,
    რომელიც წარმოადგენს დროის სარტყელს
ქართული
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語Қазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
ვებსაიტის მუშაობის, ანალიტიკისა და პერსონალიზაციისთვის ვიყენებთ ქუქი-ფაილებს. მონაცემთა დამუშავება ხდება Კონფიდენციალურობის პოლიტიკის შესაბამისად.
ყველას მიღება პარამეტრები უარყოფა