PHP Conference Nagoya 2025

IntlDateFormatter::setCalendar

datefmt_set_calendar

(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)

IntlDateFormatter::setCalendar -- datefmt_set_calendarKullanılacak takvimi tanımlar

Açıklama

Nesne yönelimli kullanım

public IntlDateFormatter::setCalendar(IntlCalendar|int|null $takvim): bool

Yordamsal kullanım

datefmt_set_calendar(IntlDateFormatter $biçemleyici, IntlCalendar|int|null $takvim): bool

Biçemleyici tarafından kullanılacak takvimi tanımlar.

Bağımsız Değişkenler

biçemleyici

Biçemleyici nesne.

takvim

Ya kullanılacak takvimdir. Ya IntlDateFormatter::GREGORIAN'dır; bu öntanımlı olup null belirtildiğinde de kullanılır. Ya da IntlCalendar nesnesidir.

Aktarılan IntlCalendar nesneleri kopyalanır fakat değişiklik yapılmaz.

IntlCalendar nesnesi aktarılırsa biçemleyicinin zaman dilimine dokunulmaz, aksi takdirde aktarılan nesnenin zaman dilimi geçerli olur.

Dönen Değerler

Başarı durumunda true, başarısızlık durumunda false döner.

Sürüm Bilgisi

Sürüm: Açıklama
5.5.0/PECL 3.0.0 Artık IntlCalendar nesnesi aktarılabiliyor.

Örnekler

Örnek 1 - datefmt_set_calendar() örneği

<?php
$fmt
= datefmt_create(
"tr_TR",
IntlDateFormatter::FULL,
IntlDateFormatter::FULL,
'Europe/Istanbul',
IntlDateFormatter::GREGORIAN
);
echo
"Biçemleyici takvimi: ".datefmt_get_calendar($fmt);
datefmt_set_calendar($fmt,IntlDateFormatter::TRADITIONAL);
echo
"\nYenisi: ".datefmt_get_calendar($fmt);
?>

Örnek 2 - Nesne yönelimli kullanım örneği

<?php
$fmt
= new IntlDateFormatter(
"tr_TR",
IntlDateFormatter::FULL,
IntlDateFormatter::FULL,
'Europe/Istanbul',
IntlDateFormatter::GREGORIAN
);
echo
"Biçemleyici takvimi: ".$fmt->getCalendar();
$fmt->setCalendar(IntlDateFormatter::TRADITIONAL);
echo
"\nYenisi: ".$fmt->getCalendar();
?>

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

Biçemleyici takvimi: 1
Yenisi: 0

Örnek 3 - IntlCalendar nesneli örnek

<?php
$time
= strtotime("2013-03-03 00:00:00 UTC");
$formatter = IntlDateFormatter::create("tr_TR", NULL, NULL, "Europe/Amsterdam");

echo
"önce: ", $formatter->format($time), "\n";

/* takvimin yerelinin kullanılmayışına dikkat! */
$formatter->setCalendar(IntlCalendar::createInstance(
"America/New_York", "pt_BR@calendar=islamic"));

echo
"sonra: ", $formatter->format($time), "\n";

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

önce: 3 Mart 2013 Pazar 01:00:00 Orta Avrupa Standart Saati
sonra:  20 Rebiülahir 1434 Cumartesi 19:00:00 Kuzey Amerika Doğu Standart Saati

Ayrıca Bakınız

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top