Тэхналогіі рэкламыАналітыка і тэсціраваннеЗмест маркетынгуПлатформы дадзеных кліентаўЭлектронная камерцыя і рознічны гандальМаркетынг і аўтаматызацыя электроннай поштыМаркетынг падзейМабільны маркетынг, абмен паведамленнямі і праграмыПлатны і арганічны пошукавы маркетынгСувязі з грамадскасцюНавучанне продажам і маркетынгуУключэнне продажаў, аўтаматызацыя і прадукцыйнасцьСацыяльныя сеткі і ўплывовы маркетынг

Колькі часу? Як нашы сістэмы адлюстроўваюць, разлічваюць, фарматуюць і сінхранізуюць даты і час

Гэта гучыць як простае пытанне, але вы здзівіцеся, наколькі складаная інфраструктура дае вам дакладны час. Калі вашы карыстальнікі існуюць у розных гадзінных паясах або нават падарожнічаюць па часавых паясах падчас выкарыстання вашых сістэм, чакаецца, што ўсё працуе бесперашкодна.

Але гэта не проста.

Прыклад: у вас ёсць супрацоўнік у Фініксе, якому неабходна запланаваць адпраўку электроннай пошты на 8:00 раніцы ў панядзелак для сваёй кампаніі ў Лос-Анджэлесе. Фенікс не прыстасоўваецца да летняга часу; Лос-Анджэлес робіць. А як жа адрасаты? Ці павінны яны атрымаць электронны ліст у 8:00 раніцы ў панядзелак у адпаведным часавым поясе? Або падпісчыкі ў Нью-Ёрку атрымаюць сваю электронную пошту ў 11:00 EST у панядзелак?

Як адлюстроўваецца час на кампутары

  • Аперацыйная сістэма (OS) – Ваша аперацыйная сістэма шукае час па гадзінніку рэальнага часу (RTC). Ён рэгулюе фармат даты для вашай мясцовасці і часу для вашага адпаведнага гадзіннага пояса, звычайна вызначанага месцазнаходжаннем вашай прылады.
    • Фарматы даты – Ёсць некалькі распаўсюджаных фарматаў даты, у тым ліку:
      • Дата грыгарыянскага календара (ГГГГ-ММ-ДД), напрыклад, 2022-02-08
      • Дата ў стылі ЗША (ДД/ММ/ГГГГ), напрыклад, 02/08/2022
      • Дата ў еўрапейскім стылі (ДД/ММ/ГГГГ), напрыклад, 08
    • часовыя зоны – У свеце 24 гадзінныя паясы, кожны з якіх аддалены адзін ад аднаго прыкладна на 15 градусаў даўгаты. Часавыя паясы дзеляць свет на рэгіёны з аднолькавым стандартным часам, каб людзі ў кожным часавым поясе маглі мець адзіны час для паўсядзённай дзейнасці.
    • Летні час – У рэгіёнах, дзе выконваецца летні час, вясной гадзіннікі пераводзяцца на адну гадзіну наперад, восенню — на гадзіну назад. Гэта прыводзіць да дадатковай гадзіны дзённага святла па вечарах у летнія месяцы, але гэта таксама азначае, што сонца ўзыходзіць і заходзіць на гадзіну раней раніцай і ўвечары, адпаведна, у зімовыя месяцы.
  • Гадзіннік у рэжыме рэальнага часу (RTC) – ваш кампутар падтрымлівае час, нават калі ён выключаны, з дапамогай чыпа, вядомага як RTC. Калі ён не падключаны да сілкавання, невялікая літыевая батарэя забяспечвае працу чыпа (каламбур) і можа сілкаваць яго да дзесяці гадоў без зарадкі.
  • Пратакол сеткавага часу (NTP) – калі аперацыйныя сістэмы маюць усталяванае злучэнне з Інтэрнэтам, яны выкарыстоўваюць NTP для сінхранізацыі сваіх гадзіннікаў з пулам сервераў часу, у тым ліку тых, што прадастаўляюцца Пратакол сеткавага часу. Па змаўчанні Windows сінхранізуецца з серверамі NTP кожныя 7 дзён, а macOS — кожную гадзіну. NTP падтрымліваюць свой час, выкарыстоўваючы каардынаваны сусветны час (UTC). Калі кліент запытвае бягучы час у сервера NTP, сервер адказвае 64-бітным значэннем, якое ўяўляе колькасць секунд з 1 студзеня 1900 года ў 00:00:00 UTC.
  • Каардынаваны універсальны час (UTC) – стандартызаваны час, які выкарыстоўваецца ў якасці асновы для ўсяго часу ў свеце. Ён заснаваны на Міжнародным атамным часе (TAI), які вымярае сярэдні час, які прайшоў паміж дзвюма пэўнымі кропкамі на арбітах Месяца Зямлі. UTC быў упершыню рэалізаваны ў 1972 годзе як пераемнік TAI і часу па Грынвічы (GMT). UTC захоўваецца ў межах 0.9 секунды ад шкалы часу TAI, і яго дакладнасць падтрымліваецца выкарыстаннем атамных гадзіннікаў і іншых тэхналогій вымярэння часу.
    • Часавыя паясы 24 UTC дзеляцца на зрушэнне катэгорыі, дзе кожнае зрушэнне з'яўляецца карэкціроўкай адпаведнага часу ў гадзінах: UTC-12, UTC-11, UTC-10, UTC-9, UTC-8, UTC-7, UTC-6, UTC-5, UTC-4, UTC-3, UTC-2, UTC-1, UTC, UTC+1, UTC+2, UTC+3, UTC+4, UTC+5, UTC+6, UTC+7, UTC+8, UTC+9, UTC+10 і UTC+11.
часавыя паясы UTC
  • Міжнародны атамны час (TAI) – стандарт часу, які заснаваны на сярэднім часе, які прайшоў паміж дзвюма пэўнымі кропкамі на арбітах спадарожніка Зямлі. TAI - адна з самых дакладных і стабільных даступных шкал часу, і яна падтрымліваецца Міжнароднае бюро мер і вагі.
  • Атамныя гадзіннікі – высокадакладныя хронаметрысты, якія выкарыстоўваюць натуральныя ваганні атамаў для вымярэння часу. Найбольш распаўсюджаным тыпам атамных гадзіннікаў з'яўляюцца цэзіевыя атамныя гадзіннікі, якія выкарыстоўваюць вібрацыі атамаў цэзію для захавання часу. Дакладнасць атамнага гадзінніка падтрымліваецца стабільнасцю частоты электрамагнітнага выпраменьвання, якое выпускаецца атамамі цэзію. Гэтая частата настолькі стабільная, што змяняецца толькі на долю секунды на працягу тысяч гадоў. Затым частата электрамагнітнага выпраменьвання параўноўваецца з кварцавым асцылятарам, які выкарыстоўваецца для кіравання лічыльнікам. Лічыльнік падлічвае колькасць цыклаў электрамагнітнага выпраменьвання, і гэты адлік выкарыстоўваецца для разліку часу. Лічыльнік пастаянна карэктуецца, каб пераканацца, што ён застаецца ў сінхранізацыі з вібрацыямі атамаў цэзію.

Сучасныя сістэмы часта запісваюць час як часовыя меткі Unix. Пазнака часу Unix - гэта лікавае прадстаўленне пэўнага моманту часу, якое вымяраецца як колькасць секунд, якія прайшлі з 1 студзеня 1970 года ў 00:00:00 UTC. Пазнакі часу Unix шырока выкарыстоўваюцца ў камп'ютэрных сістэмах, таму што з імі проста працаваць, іх можна лёгка параўноўваць, сартаваць і маніпуляваць імі. Яны таксама не залежаць ад гадзінных паясоў, што азначае, што яны забяспечваюць стандартызаванае прадстаўленне часу, якое можна выкарыстоўваць у розных геаграфічных рэгіёнах.

Такім чынам... калі вы правяраеце час, вы паказваеце

Праца з датамі ў PHP

Я пісаў раней пра тое, як праграмна паказаць год вашай дэкларацыі аб аўтарскіх правах так што вам не трэба абнаўляць яго кожны год. Аднак з фінікамі можна зрабіць яшчэ шмат чаго. Вось некалькі прыкладаў:

Паказаць дату як 2023-02-08:

$current_date = date("Y-m-d");
echo $current_date;

Адлюстраваць дату як пазнаку часу 1612684800:

$timestamp = strtotime("2023-02-08");
echo $timestamp;

Адлюстроўваць дату і час у фармаце UTC замест мясцовага гадзіннага пояса 2023-02-08 15:25:00:

$utc_date = gmdate("Y-m-d H:i:s");
echo $utc_date;

Адлюстраваць бягучую пазнаку часу Unix як 1612742153:

$current_timestamp = time();
echo $current_timestamp;

Часавы пояс па змаўчанні - Лос-Анджэлес, а затым адлюстроўваць дату і час як 2023-02-08 07:25:00:

date_default_timezone_set("America/Los_Angeles");
$date = date("Y-m-d H:i:s");
echo $date;

Арганізацыя сімвалаў фармату даты PHP у лагічныя групы з кожнай групай у алфавітным парадку і сімваламі фармату ў якасці падмаркераў:

  • дзень
    • d – Дзень месяца, 2 лічбы з нулямі (ад 01 да 31). прыклад: 15
    • D – Тэкставае адлюстраванне дня, тры літары (ад пн да нд). прыклад: Thu
    • j – Дзень месяца без нулёў у пачатку (ад 1 да 31). прыклад: 15
    • l (малая літара 'L') – поўнае тэкставае прадстаўленне дня тыдня (з нядзелі па суботу). прыклад: Thursday
    • S – Англійская парадкавы суфікс для дня месяца, 2 знака (st, nd, rd або th). прыклад: th
    • w – Лікавае ўяўленне дня тыдня (ад 0 (для нядзелі) да 6 (для суботы)). прыклад: 4
    • z – Дзень года (пачынаючы з 0). Прыклад бягучай даты можа быць недакладным без дакладных разлікаў.
  • месяц
    • F – Поўнае тэкставае адлюстраванне месяца (са студзеня па снежань). прыклад: February
    • m – Лікавае ўяўленне месяца з нулямі ў пачатку (ад 01 да 12). прыклад: 02
    • M – Кароткае тэкставае адлюстраванне месяца, трох літар (ад студзеня да снежня). прыклад: Feb
    • n – Лікавае ўяўленне месяца без нулёў у пачатку (ад 1 да 12). прыклад: 2
    • t – Колькасць дзён у дадзеным месяцы (ад 28 да 31). прыклад: 28
  • тыдзень
    • W – Нумар тыдня года па ISO-8601, тыдні, якія пачынаюцца з панядзелка (прыклад: 42, 42-ы тыдзень у годзе). Прыклад бягучай даты можа быць недакладным без дакладных разлікаў.
  • год
    • o – ISO-8601 нумарацыя тыдня года. Гэта мае тое ж значэнне, што і Y, за выключэннем таго, што калі нумар тыдня ISO (W) належыць да папярэдняга або наступнага года, замест гэтага выкарыстоўваецца гэты год. прыклад: 2024
    • Y – Поўнае лічбавае прадстаўленне года, 4 лічбы. прыклад: 2024
    • y – Двухзначнае ўяўленне года. прыклад: 24
  • Timezone
    • T – Абрэвіятура гадзіннага пояса. прыклад: EST
    • e – Ідэнтыфікатар часовага пояса. прыклад: America/New_York
    • P – Розніца з часам па Грынвічы (GMT) з двукроп'ем паміж гадзінамі і хвілінамі. прыклад: -04:00
    • O – Розніца з часам па Грынвічы (GMT) без двукроп'я паміж гадзінамі і хвілінамі. прыклад: -0400
    • Z - Зрушэнне гадзіннага пояса ў секундах. Зрушэнне часавых паясоў на захад ад UTC заўсёды адмоўнае, а для гадзінных паясоў на ўсход ад UTC заўсёды дадатнае. прыклад: -14400 (for EST)

Кожная мова мае свае функцыі для працы з UTC, пазнакамі часу, фарматамі адлюстравання, гадзіннымі паясамі і летнім часам. Калі вы распрацоўваеце платформу, вы захочаце звярнуць вялікую ўвагу на тое, як вы захоўваеце дадзеныя, заснаваныя на часе, а таксама на тое, як вы іх фарматуеце і адлюстроўваеце. Калі вы з'яўляецеся бізнесам, вы хочаце пераканацца, што вашыя платформы могуць кіраваць працай у розных гадзінных паясах, адлюстроўваць адпаведныя фарматы для вашых карыстальнікаў, а таксама кіраваць карэкціроўкай летняга часу.

Такім чынам… Колькі цяпер часу?

Мая аперацыйная сістэма фарматуе дату і час як 13 студзеня 2026 г., 10:57 раніцы. Час быў скарэкціраваны з часавай меткі Unix у адпаведнасці з маім гадзінным поясам, з улікам пераходу на летні час. Гэты час быў сінхранізаваны за апошнюю гадзіну з MacOS з NTP-серверам, які працуе ў UTC, і скарэкціраваны з розніцай у 0.9 секунды з TAI і атамнымі гадзіннікамі. Усё гэта, вядома, дакладны час, паказаны для майго месцазнаходжання адносна Зямлі, Месяца і Сонца... з улікам пераходу на летні час.

Артыкулы па Тэме

Вярнуцца да пачатку кнопкі
блізка

Выяўлена блакіроўка рэкламы

Мы залежым ад рэкламы і спонсарства, каб падтрымліваць Martech Zone бясплатна. Калі ласка, адключыце блакіроўшчык рэкламы або падтрымайце нас, аформіўшы даступнае гадавое сяброўства без рэкламы (10 долараў ЗША):

Зарэгіструйцеся для атрымання штогадовага сяброўства