PHP 8.4.2 Released!

DateInterval::format

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

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

Açıklama

public DateInterval::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.
Karakter Açıklama Örnek değerler
% % iminin kendisi %
Y Başına 0 getirilerek iki haneli yıl 01, 03
y 0 ile öncelenmeksizin yıl 1, 3
M Başına 0 getirilerek iki haneli ay 01, 03, 12
m 0 ile öncelenmeksizin ay 1, 3, 12
D Başına 0 getirilerek iki haneli ayın günü 01, 03, 31
d 0 ile öncelenmeksizin ayın günü 1, 3, 31
a DateTime::diff()'in sonucu olarak toplam gün sayısı, aksi takdirde (unknown) 4, 18, 8123
H Başına 0 getirilerek iki haneli saat 01, 03, 23
h 0 ile öncelenmeksizin saat 1, 3, 23
I Başına 0 getirilerek iki haneli dakika 01, 03, 59
i 0 ile öncelenmeksizin dakika 1, 3, 59
S Başına 0 getirilerek iki haneli saniye 01, 03, 57
s 0 ile öncelenmeksizin saniye 1, 3, 57
F Baştan 0 ile doldurulmuş en az 6 hanelik sayısal microsaniye. 007701, 052738, 428291
f Sayısal olarak mikrosaniye 7701, 52738, 428291
R Negatifse "-", pozitifse "+" imi -, +
r Negatifse "-", 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.12 F ve f biçemi artık daima pozitif oluyor.
Sürüm: Açıklama
7.1.0 F 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

add a note

User Contributed Notes 1 note

up
1
online dot cloudmeetings dot marco at gmail dot com
5 months ago
Pls note these important abbreviations;

P: period
Y: years
M: months
D: days
T: time
H: hours
M: minutes
S: seconds

The above is from the ISO 8601 - an international standard that defines how to use, store, and transfer date, time, and duration information.
To Top