(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
IntlDateFormatter::setCalendar -- datefmt_set_calendar — Kullanılacak takvimi tanımlar
Nesne yönelimli kullanım
Yordamsal kullanım
Biçemleyici tarafından kullanılacak takvimi tanımlar.
biçemleyiciBiç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.
Ö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