Kifupi cha Tarehe
Kifupi DateInterval kinaruhusu kufanya kazi na vipindi vya muda katika PHP.
Kinatumika kuhifadhi tofauti kati ya tarehe mbili au kubainisha kipindi
katika mbinu za kufanya kazi na tarehe. Kipindi huundwa katika muundo maalum.
Syntax
DateInterval::__construct(string $duration)
Muundo wa Kipindi
Muundo una herufi P (kipindi)
na vipengele:
P{y}Y{m}M{d}DT{h}H{m}M{s}S{w}W
Katika muundo huu: Y - miaka, M - miezi,
D - siku, T - kitenganishi cha muda,
H - masaa, M - dakika, S - sekunde,
W - wiki.
Kabla ya herufi hizi unahitabu kuandika thamani inayofanana.
Kwa mfano, 3Y itamaanisha
miezi mitatu, na 5Y2M itamaanisha
5 miaka na 2 miezi.
Baada ya kuunda kitu DateInterval
kutakuwa na sifa zifuatazo:
<?php
$interval->y // miaka
$interval->m // miezi
$interval->d // siku
$interval->h // masaa
$interval->i // dakika
$interval->s // sekunde
$interval->f // mikrosekunde
$interval->invert // 1 ikiwa kipindi ni hasi
$interval->days // idadi ya siku (ikiwa imeundwa kupitia diff())
?>
Wacha tuone utendaji wa kipindi kwa mifano:
Mfano
Wacha tuunde kipindi cha 1 saa, 45 dakika na 30 sekunde:
<?php
$interval = new DateInterval('PT1H45M30S');
var_dump($interval);
?>
Matokeo ya kutekeleza kificho:
DateInterval Object
(
'y' => 0
'm' => 0
'd' => 0
'h' => 1
'i' => 45
's' => 30
)
Mfano
Wacha tuunde kipindi cha 3 wiki na 2 siku:
<?php
$interval = new DateInterval('P3W2D');
var_dump($interval);
?>
Matokeo ya kutekeleza kificho:
DateInterval Object
(
'y' => 0
'm' => 0
'd' => 23
'h' => 0
'i' => 0
's' => 0
)
Mfano
Wacha tuunde kipindi cha 5 miezi, 10 siku na 6 masaa:
<?php
$interval = new DateInterval('P5M10DT6H');
var_dump($interval);
?>
Matokeo ya kutekeleza kificho:
DateInterval Object
(
'y' => 0
'm' => 5
'd' => 10
'h' => 6
'i' => 0
's' => 0
)
Mfano
Wacha tuunde kipindi cha 2 miaka na 15 dakika:
<?php
$interval = new DateInterval('P2YT15M');
var_dump($interval);
?>
Matokeo ya kutekeleza kificho:
DateInterval Object
(
'y' => 2
'm' => 0
'd' => 0
'h' => 0
'i' => 15
's' => 0
)
Mfano
Wacha tuunde kipindi cha 1 siku, 12 masaa na 30 sekunde:
<?php
$interval = new DateInterval('P1DT12H30S');
var_dump($interval);
?>
Matokeo ya kutekeleza kificho:
DateInterval Object
(
'y' => 0
'm' => 0
'd' => 1
'h' => 12
'i' => 0
's' => 30
)
Mfano
Wacha tuunde kipindi hasi cha 1 mwaka na 3 miezi (kipindi nyuma):
<?php
$interval = new DateInterval('P1Y3M');
$interval->invert = 1;
var_dump($interval);
?>
Matokeo ya kutekeleza kificho:
DateInterval Object
(
'y' => 1
'm' => 3
'd' => 0
'h' => 0
'i' => 0
's' => 0
'invert' => 1
)
Mfano
Wacha tuunde kipindi hasi cha 2 masaa, 30 dakika (kipindi nyuma):
<?php
$interval = new DateInterval('PT2H30M');
$interval->invert = 1;
var_dump($interval);
?>
Matokeo ya kutekeleza kificho:
DateInterval Object
(
'y' => 0
'm' => 0
'd' => 0
'h' => 2
'i' => 30
's' => 0
'invert' => 1
)
Mfano
Wacha tuongeze kipindi kwenye tarehe ya sasa:
<?php
$date = new DateTime('2023-01-01');
$interval = new DateInterval('P10D');
$date->add($interval);
echo $date->format('Y-m-d');
?>
Matokeo ya kutekeleza kificho:
'2023-01-11'
Mfano
Wacha tuhesabu tofauti kati ya tarehe mbili:
<?php
$date1 = new DateTime('2023-01-01');
$date2 = new DateTime('2023-02-15');
$interval = $date1->diff($date2);
echo $interval->format('%m months %d days');
?>
Matokeo ya kutekeleza kificho:
'1 months 14 days'
Angalia Pia
-
kifupi
DateTime,
kinachowakilisha tarehe na muda -
kifupi
DateTimeZone,
kinachowakilisha eneo la muda