Example obtaining a week and its boundaries (for building a calendar view):
<?php
$date = new DateTime('now');
$locale = 'en_US';
$thisWeek = IntlCalendar::fromDateTime($date, $locale);
$thisWeek->set(IntlCalendar::FIELD_DAY_OF_WEEK, $thisWeek->getFirstDayOfWeek());
// $thisWeek now points to the first day of the week
$weekStart = $thisWeek->toDateTime();
$daysToAdvance = $thisWeek->getMaximum(IntlCalendar::FIELD_DAY_OF_WEEK) - 1;
// Maximum number of days in a week minus 1 gets you to the last day
$weekEnd = $weekStart->modify("+{$daysToAdvance} days");
$previousWeek = IntlCalendar::fromDateTime($date, $locale);
$previousWeek->add(IntlCalendar::FIELD_WEEK_OF_YEAR, -1);
$previousWeek = $previousWeek->toDateTime();
$nextWeek = IntlCalendar::fromDateTime($date, $locale);
$nextWeek->add(IntlCalendar::FIELD_WEEK_OF_YEAR, 1);
$nextWeek = $nextWeek->toDateTime();
?>IntlCalendar
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
IntlCalendar
Референца за `class.intlcalendar.php` со подобрена типографија и навигација.
Класата IntlCalendar
(PHP 5 >= 5.5.0, PHP 7, PHP 8, PECL >= 3.0.0a1)
Вовед
Синопсис на класата
$timezone = null, ?string $locale = null): ?IntlCalendar$keyword, string $locale, bool $onlyCommon): IntlIterator|falseint
$year,int
$month,int
$dayOfMonth Ги ескејпува специјалните знаци во,int
$hour Ги ескејпува специјалните знаци во,int
$minute Ги ескејпува специјалните знаци во,int
$second Ги ескејпува специјалните знаци во): true
Претходно дефинирани константи
-
IntlCalendar::FIELD_ERAint -
Поле на календарот што нумерички претставува ера, на пример
1за н.е. и0за п.н.е. во Грегоријанскиот/Јулијанскиот календар и235for the Heisei (平成) era in the Japanese calendar. Not all calendars have more than one era. -
IntlCalendar::FIELD_YEARint -
Поле на календарот за годината. Ова не е уникатно низ ерите. Ако типот на календарот има повеќе од една ера, генерално минималната вредност за ова поле ќе биде
1. -
IntlCalendar::FIELD_MONTHint -
Поле на календарот за месецот. Низата на месеците е базирана на нула, така што јануари (овде се користи за означување на првиот месец од календарот; ова може да се нарече и со друго име, како Мухарам во исламскиот календар) е претставен со
0, февруари со1, …, декември со11и, за календарите што го имаат, 13-тиот или престапен месец со12. -
IntlCalendar::FIELD_WEEK_OF_YEARint -
Поле на календарот за бројот на неделата во годината. Ова зависи од тоа кој ден од неделата е сметен за почеток на неделата Пример #4 Споредување на вратената вредност на include минимален број на денови во неделата.
-
IntlCalendar::FIELD_WEEK_OF_MONTHint -
Поле на календарот за бројот на неделата во месецот. Ова зависи од тоа кој ден од неделата е сметен за почеток на неделата Пример #4 Споредување на вратената вредност на include минимален број на денови во неделата.
-
IntlCalendar::FIELD_DATEint -
Поле на календарот за денот од месецот. Исто како
IntlCalendar::FIELD_DAY_OF_MONTH, што има појасно име. -
IntlCalendar::FIELD_DAY_OF_YEARint -
Поле на календарот за денот од годината. За Грегоријанскиот календар, започнува со
1и завршува со365or366. -
IntlCalendar::FIELD_DAY_OF_WEEKint -
Поле на календарот за денот од неделата. Неговите вредности започнуваат со
1(Недела, видиIntlCalendar::DOW_SUNDAYза ерата Хеисеи (平成) во јапонскиот календар. Не сите календари имаат повеќе од една ера. -
IntlCalendar::FIELD_DAY_OF_WEEK_IN_MONTHint -
и последователните константи) и последната валидна вредност е 7 (сабота).
1Даден ден од неделата (недела, понеделник, …), ова календарско поле му доделува реден број на таков ден од неделата во одреден месец. Така, ако вредноста на ова поле е2и вредноста на денот од неделата е5.(понеделник), тогаш поставениот ден од месецот е првиот понеделник во месецот; максималната вредност е
0Дополнително, вредноста0и дозволени се и негативни вредности. Вредноста1ги опфаќа седумте дена што се случуваат непосредно пред првите седум дена од месецот (кои затоа имаат „ден од неделата во месецот“ со вредност-1). Негативните вредности почнуваат да бројат од крајот на месецот –-2укажува на последната појава на ден од неделата во месецот,За разлика од
IntlCalendar::FIELD_WEEK_OF_MONTHandIntlCalendar::FIELD_WEEK_OF_YEARдо претпоследната, и така натаму. , оваа вредност не зависи од IntlCalendar::getFirstDayOfWeek() или одIntlCalendar::getMinimalDaysInFirstWeek() -
IntlCalendar::FIELD_AM_PMint -
. Првиот понеделник е првиот понеделник, дури и ако се случи во недела што припаѓа на претходниот месец.
0Календарско поле што укажува дали времето е пред пладне (вредност1, претпладне) или после ( -
IntlCalendar::FIELD_HOURint -
). На полноќ е претпладне, на пладне е попладне.
0to11. -
IntlCalendar::FIELD_HOUR_OF_DAYint -
Календарско поле за часот, без да се специфицира дали е претпладне или попладне. Валидни вредности се
0to23. -
IntlCalendar::FIELD_MINUTEint -
Поле во календарот за компонентата минути од времето.
-
IntlCalendar::FIELD_SECONDint -
Поле во календарот за компонентата секунди од времето.
-
IntlCalendar::FIELD_MILLISECONDint -
Поле во календарот за компонентата милисекунди од времето.
-
IntlCalendar::FIELD_ZONE_OFFSETint -
Поле во календарот што укажува на суровата временска зона, во милисекунди. Суровата временска зона е временската зона, исклучувајќи ја секоја временска зона поради летното сметање на времето.
-
IntlCalendar::FIELD_DST_OFFSETint -
Поле во календарот за летното сметање на времето на временската зона на календарот, во милисекунди, ако е активно за времето на календарот.
-
IntlCalendar::FIELD_YEAR_WOYint -
и последователни константи) и последната валидна вредност е 7 (сабота). Календарско поле што го претставува годината за purposes.
-
IntlCalendar::FIELD_DOW_LOCALint -
недела од годината
1and7,1што се користи за денот од неделата што одговара на вредноста вратена од , оваа вредност не зависи од. -
IntlCalendar::FIELD_EXTENDED_YEARint -
Поле во календарот за претставување на број на година што е континуирано низ ерите. За грегоријанскиот календар, вредноста на ова поле се совпаѓа со онаа на
IntlCalendar::FIELD_YEARза години п.н.е.; година пред нашата ераyсе претставува со-y + 1. -
IntlCalendar::FIELD_JULIAN_DAYint -
Поле во календарот за модифициран јулијански број на денови. Се разликува од конвенционалниот јулијански број на денови по тоа што неговите премини се случуваат на полноќ во локалната зона наместо напладне UTC. Уникатно идентификува датум.
-
IntlCalendar::FIELD_MILLISECONDS_IN_DAYint -
Поле во календарот што ги опфаќа информациите во
IntlCalendar::FIELD_HOUR_OF_DAY,IntlCalendar::FIELD_MINUTE,IntlCalendar::FIELD_SECONDandIntlCalendar::FIELD_MILLISECONDКалендарско поле за локализираниот ден од неделата. Ова е вредност помеѓу0to24 * 3600 * 1000 - 1. Опсегот е од -
IntlCalendar::FIELD_IS_LEAP_MONTHint -
Поле во календарот чија вредност е
1за означување на престапен месец и0otherwise. -
IntlCalendar::FIELD_FIELD_COUNTint -
Вкупен број на полиња.
-
IntlCalendar::FIELD_DAY_OF_MONTHint -
IntlCalendar::DOW_SUNDAYint -
Sunday.
-
IntlCalendar::DOW_MONDAYint -
Monday.
-
IntlCalendar::DOW_TUESDAYint -
Tuesday.
-
IntlCalendar::DOW_WEDNESDAYint -
Wednesday.
-
IntlCalendar::DOW_THURSDAYint -
Thursday.
-
IntlCalendar::DOW_FRIDAYint -
Friday.
-
IntlCalendar::DOW_SATURDAYint -
Saturday.
-
IntlCalendar::DOW_TYPE_WEEKDAYint -
Излез од . Тоа не е количината на милисекунди што поминале во денот, бидејќи при премини на летни сметања на времето ќе има прекини аналогни на оние на времето на ѕидот. укажува дека денот во неделата е работен ден.
-
IntlCalendar::DOW_TYPE_WEEKENDint -
Излез од . Тоа не е количината на милисекунди што поминале во денот, бидејќи при премини на летни сметања на времето ќе има прекини аналогни на оние на времето на ѕидот. укажува дека денот во неделата припаѓа на викендот.
-
IntlCalendar::DOW_TYPE_WEEKEND_OFFSETint -
Излез од . Тоа не е количината на милисекунди што поминале во денот, бидејќи при премини на летни сметања на времето ќе има прекини аналогни на оние на времето на ѕидот. укажува дека викендот започнува за време на дадениот ден во неделата.
-
IntlCalendar::DOW_TYPE_WEEKEND_CEASEint -
Излез од . Тоа не е количината на милисекунди што поминале во денот, бидејќи при премини на летни сметања на времето ќе има прекини аналогни на оние на времето на ѕидот. укажува дека викендот завршува за време на дадениот ден во неделата.
-
IntlCalendar::WALLTIME_FIRSTint -
Излез од IntlCalendar::getDayOfWeekType() укажува дека времињата во прескочениот опсег треба да се однесуваат на истиот момент како времињата со еден час помалку и од IntlCalendar::getSkippedWallTimeOption() укажува дека времињата во повторениот опсег треба да се однесуваат на моментот на првото појавување на таквото време.
-
IntlCalendar::WALLTIME_LASTint -
Излез од IntlCalendar::getDayOfWeekType() укажува дека времињата во прескочениот опсег треба да се однесуваат на истиот момент како времињата со еден час повеќе и од IntlCalendar::getSkippedWallTimeOption() укажува дека времињата во повторениот опсег треба да се однесуваат на моментот на второто појавување на таквото време.
-
IntlCalendar::WALLTIME_NEXT_VALIDint -
Излез од IntlCalendar::getDayOfWeekType() укажува дека времињата во прескочениот опсег треба да се однесуваат на моментот кога се случува (започнува) транзицијата на летното сметање на времето.
Дневник на промени
| Верзија | = NULL |
|---|---|
| 8.4.0 | Константите на класата сега се типизирани. |
Содржина
- IntlCalendar::add — Додадете (потпишана) количина време на поле
- IntlCalendar::after — Дали времето на овој објект е по времето на дадениот објект
- IntlCalendar::before — Дали времето на овој објект е пред времето на дадениот објект
- IntlCalendar::clear — Исчистете поле или сите полиња
- IntlCalendar::__construct — Приватен конструктор за забрана на инстанцирање
- IntlCalendar::createInstance — Создадете нов IntlCalendar
- IntlCalendar::equals — Споредете го времето на два IntlCalendar објекти за еднаквост
- IntlCalendar::fieldDifference — Пресметајте ја разликата помеѓу даденото време и времето на овој објект
- IntlCalendar::fromDateTime — Создадете IntlCalendar од DateTime објект или стринг
- IntlCalendar::get — Земете ја вредноста за поле
- IntlCalendar::getActualMaximum — Максималната вредност за поле, земајќи го предвид тековното време на објектот
- IntlCalendar::getActualMinimum — Минималната вредност за поле, земајќи го предвид тековното време на објектот
- IntlCalendar::getAvailableLocales — Земете низа од локали за кои има податоци
- IntlCalendar::getDayOfWeekType — Кажете дали е ден во работна недела, викенд или ден што има премин помеѓу двете
- IntlCalendar::getErrorCode — Земете го последниот код за грешка на објектот
- IntlCalendar::getErrorMessage — Земете ја последната порака за грешка на објектот
- IntlCalendar::getFirstDayOfWeek — Земи го првиот ден од неделата за локалот на календарот
- IntlCalendar::getGreatestMinimum — Земи ја најголемата локална минимална вредност за поле
- IntlCalendar::getKeywordValuesForLocale — Земи го множеството вредности на клучни зборови за локалот
- IntlCalendar::getLeastMaximum — Земи го најмалиот локален максимум за поле
- IntlCalendar::getLocale — Земи го локалот поврзан со објектот
- IntlCalendar::getMaximum — Земи ја глобалната максимална вредност за поле
- IntlCalendar::getMinimalDaysInFirstWeek — Земи го минималниот број денови што првата недела во годината или месецот може да ги има
- IntlCalendar::getMinimum — Земи ја глобалната минимална вредност за поле
- IntlCalendar::getNow — Земи го бројот што ја претставува тековната временска зона
- IntlCalendar::getRepeatedWallTimeOption — Земи го однесувањето за ракување со повторувачкото време
- IntlCalendar::getSkippedWallTimeOption — Земи го однесувањето за ракување со прескокнатото време
- IntlCalendar::getTime — Земи го времето што моментално го претставува објектот
- IntlCalendar::getTimeZone — Земи ја временската зона на објектот
- IntlCalendar::getType — Земи го типот на календарот
- IntlCalendar::getWeekendTransition — Земи го времето од денот кога започнува или завршува викендот
- IntlCalendar::inDaylightTime — Дали времето на објектот е во летна сметање на времето
- IntlCalendar::isEquivalentTo — Дали друг календар е еднаков, но за различно време
- IntlCalendar::isLenient — Дали толкувањето на датумот/времето е во опуштен режим
- IntlCalendar::isSet — Дали е поставено поле
- IntlCalendar::isWeekend — Дали одреден датум/време е за време на викендот
- IntlCalendar::roll — Додај вредност во поле без пренесување во позначајни полиња
- IntlCalendar::set — Додај вредност на поле без пренесување во позначајни полиња
- IntlCalendar::setDate — Постави поле за време или неколку заеднички полиња одеднаш
- IntlCalendar::setDateTime — Постави полиња за датум
- IntlCalendar::setFirstDayOfWeek — Постави полиња за датум и време
- IntlCalendar::setLenient — Постави го денот од неделата кога се смета дека започнува неделата
- IntlCalendar::setMinimalDaysInFirstWeek — Постави дали толкувањето на датумот/времето треба да биде попустливо
- IntlCalendar::setRepeatedWallTimeOption — Постави минимален број денови што првата недела во годината или месецот може да ги има
- IntlCalendar::setSkippedWallTimeOption — Постави однесување за ракување со повторливи времиња на ѕид при премини со негативен временски офсет
- IntlCalendar::setTime — Постави однесување за ракување со прескокнати времиња на ѕид при премини со позитивен временски офсет
- IntlCalendar::setTimeZone — Постави го календарското време во милисекунди од епохата
- IntlCalendar::toDateTime — Постави ја временската зона што ја користи овој календар