DateInterval::format

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

DateInterval::formatZaman aralığını biçimler

Açıklama

publicDateInterval::format(string$biçem): string

Zaman aralığını biçimlendirir.

Bağımsız Değişkenler

biçem

biçem dizgesinde tanınan karakterler aşağıda listelenmiştir. Her biçem karakterinin başına bir yüzde (%) işareti konmalıdır.
KarakterAçıklamaÖrnek değerler
%% iminin kendisi%
YBaşına 0 getirilerek iki haneli yıl01, 03
y0 ile öncelenmeksizin yıl1, 3
MBaşına 0 getirilerek iki haneli ay01, 03, 12
m0 ile öncelenmeksizin ay1, 3, 12
DBaşına 0 getirilerek iki haneli ayın günü01, 03, 31
d0 ile öncelenmeksizin ayın günü1, 3, 31
aDateTime::diff()'in sonucu olarak toplam gün sayısı, aksi takdirde (unknown)4, 18, 8123
HBaşına 0 getirilerek iki haneli saat01, 03, 23
h0 ile öncelenmeksizin saat1, 3, 23
IBaşına 0 getirilerek iki haneli dakika01, 03, 59
i0 ile öncelenmeksizin dakika1, 3, 59
SBaşına 0 getirilerek iki haneli saniye01, 03, 57
s0 ile öncelenmeksizin saniye1, 3, 57
FBaştan 0 ile doldurulmuş en az 6 hanelik sayısal microsaniye.007701, 052738, 428291
fSayısal olarak mikrosaniye7701, 52738, 428291
RNegatifse "-", pozitifse "+" imi-, +
rNegatifse "-", pozitifse boş dizge -,

Dönen Değerler

Biçimlendirilmiş zaman aralığını bir dizge olarak döndürür.

Sürüm Bilgisi

7.2.12F ve f biçemi artık daima pozitif oluyor.
Sürüm: Açıklama
7.1.0F ve f biçem karakterleri eklendi.

Örnekler

Örnek 1 - DateInterval örneği

<?php

$interval
= new DateInterval('P2Y4DT6H8M');
echo
$interval->format('%d gün');

?>

Yukarıdaki örneğin çıktısı:

4 gün

Örnek 2 - DateInterval ve büyük değerler

<?php

$interval
= new DateInterval('P32D');
echo
$interval->format('%d gün');

?>

Yukarıdaki örneğin çıktısı:

32 gün

Örnek 3 - DateInterval ve DateTime::diff() ile %a ve %d değiştiricileri

<?php

$january
= new DateTime('2010-01-01');
$february = new DateTime('2010-02-01');
$interval = $february->diff($january);

// %a toplam gün sayısını çıktılar.
echo $interval->format('toplam %a gün')."\n";

// %d ise aya dahil olmayan gün sayısını çıktılar.
echo $interval->format('%m ay, %d gün');

?>

Yukarıdaki örneğin çıktısı:

toplam 31 gün 1 ay, 0 gün

Notlar

Bilginize:

DateInterval::format() yöntemi ne zaman dizgelerinde ne de tarih bölümlerinde tehir edilen kısımları yeniden hesaplar. Bunun sebebi "32 gün" gibi büyük değerlerin olanaksız oluşudur. Olanaklı olsaydı böyle bir değer "1 ay 4 gün" ile "1 ay 1 gün" arasında bir değer olarak yorumlanabilirdi.

Ayrıca Bakınız

To Top