Teknobench

Konvertitur tal-Unix Timestamp

Ikkonverti Unix timestamps f’sekondi jew millisekondi għal dati li jinqraw fil-ħin lokali, UTC u ISO 8601, u erġa’ ibdel kwalunkwe data f’ħin epoch.

Timestamp attwali
–

Timestamp → data

Ħin lokali
–
UTC
–
ISO 8601
–

Data → timestamp

Sekondi
–
Millisekondi
–

Kif tuża l-konvertitur tal-Unix timestamp

  1. Biex tikkonverti timestamp f’data, waħħal valur epoch bħal 1700000000 jew 1700000000000. L-għodda tinduna mill-kobor tiegħu jekk huwiex f’sekondi jew f’millisekondi.
  2. Aqra r-riżultat fiż-żona tal-ħin lokali tiegħek, f’UTC, u fil-format ISO 8601.
  3. Biex tmur fid-direzzjoni l-oħra, daħħal data u ħin; l-għodda tagħti l-valur epoch li jaqbel kemm f’sekondi kif ukoll f’millisekondi.
  4. Ħares lejn it-timestamp attwali fuq nett, li jiġi aġġornat live, kull meta teħtieġ “issa” bħala valur epoch.

X’inhu Unix timestamp?

Unix timestamp, imsejjaħ ukoll ħin epoch jew ħin POSIX, huwa n-numru ta’ sekondi li għaddew mill-epoch Unix: 1 ta’ Jannar 1970 fis-00:00:00 UTC. Per eżempju, 1700000000 jikkorrispondi għal 14 ta’ Novembru 2023 fil-22:13:20 UTC. Id-dati qabel l-1970 jirrappreżentawhom numri negattivi.

It-timestamps huma popolari mal-iżviluppaturi għax huma numru wieħed li ma jiddependix minn żoni tal-ħin, ħin tas-sajf jew formati tad-data. It-tqabbil ta’ żewġ mumenti huwa tnaqqis sempliċi, u l-ordni skont il-ħin huwa ordni numeriku sempliċi. Issibhom f’databases, fajls tal-logs, tweġibiet ta’ API, claims JWT bħal exp u iat, metadata ta’ fajls u skedaturi bħal cron.

Innota li l-ħin Unix jinjora s-sekondi tal-qabża: kull jum jgħodd eżattament 86,400 sekonda. Dan iżomm l-aritmetika sempliċi u huwa għalhekk li timestamp mhuwiex għadd strett ta’ kull sekonda fiżika mill-1970.

Sekondi kontra millisekondi

L-iktar sors komuni ta’ konfużjoni huwa l-unità. Is-sistemi Unix tradizzjonali, PHP, time.time() ta’ Python u l-biċċa l-kbira tad-databases jużaw sekondi, li llum jagħtu numru ta’ 10 ċifri. Date.now() ta’ JavaScript, System.currentTimeMillis() ta’ Java u ħafna APIs JSON jużaw millisekondi, li jagħtu numru ta’ 13-il ċifra. Jekk tinterpreta millisekondi bħala sekondi, tispiċċa għaxar eluf ta’ snin fil-futur; jekk tinterpreta sekondi bħala millisekondi, tispiċċa f’Jannar 1970. L-għodda tħares lejn id-daqs tan-numru biex tagħżel l-unità t-tajba awtomatikament, u meta tikkonverti data turi ż-żewġ valuri biex tkun tista’ tikkopja dak li s-sistema tiegħek tistenna.

Ħin lokali, UTC u ISO 8601

Timestamp jidentifika mument preċiż wieħed, iżda dak il-mument jintwera b’mod differenti skont iż-żona tal-ħin. Ir-riżultat lokali juża ż-żona tal-ħin ikkonfigurata fuq l-apparat tiegħek, filwaqt li UTC huwa r-referenza universali użata mis-servers u l-logs. ISO 8601, bħal 2023-11-14T22:13:20.000Z, huwa l-format tat-test mhux ambigwu rakkomandat għall-iskambju tad-dati bejn sistemi; iż-Z fl-aħħar tfisser UTC.

Il-problema tas-sena 2038

Ħafna sistemi eqdem jaħżnu l-ħin Unix bħala numru sħiħ ta’ 32 bit b’sinjal, li l-valur massimu tiegħu huwa 2,147,483,647. Dak il-limitu jintlaħaq fid-19 ta’ Jannar 2038 fit-03:14:07 UTC. Sekonda wara, counter bħal dan jegħleb għal numru negattiv kbir u jinqara bħala data f’Diċembru 1901. Is-sistemi operattivi, id-databases u l-lingwi moderni fil-biċċa l-kbira marru għal valuri tal-ħin ta’ 64 bit, li jbiegħdu l-limitu b’biljuni ta’ snin, iżda apparati embedded, formati ta’ fajls antiki u kolonni antiki ta’ databases jistgħu jkunu għadhom affettwati. JavaScript innifsu mhuwiex affettwat, għax jaħżen il-ħin bħala millisekondi f’numru floating-point ta’ 64 bit.

Privatezza

Il-konverżjonijiet kollha jseħħu fil-brawżer tiegħek bil-funzjonijiet tad-data integrati tiegħu. Ebda timestamps jew dati ma jintbagħtu lil server.

Mistoqsijiet frekwenti

Kif naf jekk it-timestamp tiegħi huwiex f’sekondi jew millisekondi?

Għodd iċ-ċifri. Data attwali hija 10 ċifri f’sekondi u 13-il ċifra f’millisekondi. L-għodda tapplika l-istess loġika awtomatikament, skont id-daqs tan-numru.

Għaliex il-ħin lokali huwa differenti minn UTC?

It-tnejn jiddeskrivu l-istess mument. Il-ħin lokali japplika l-offset taż-żona tal-ħin tal-apparat tiegħek u r-regoli tal-ħin tas-sajf, filwaqt li UTC m’għandu ebda offset. Jekk taqsam ħin ma’ nies x’imkien ieħor, UTC jew ISO 8601 jevitaw nuqqas ta’ ftehim.

Unix timestamp jista’ jkun negattiv?

Iva. Il-valuri negattivi jirrappreżentaw mumenti qabel l-1 ta’ Jannar 1970 UTC. Per eżempju, -86400 huwa 31 ta’ Diċembru 1969 fis-00:00:00 UTC.

Unix timestamp fih żona tal-ħin?

Le. Timestamp huwa dejjem relattiv għal UTC u ma jġorr ebda informazzjoni dwar iż-żona tal-ħin. Iż-żona tal-ħin hija importanti biss meta turih bħala data u ħin tal-kalendarju.

Is-sistemi tiegħi se jinkissru fl-2038?

Biss jekk jaħżnu l-ħin f’numru sħiħ ta’ 32 bit b’sinjal. Iċċekkja databases eqdem, firmware embedded u formati ta’ fajls binarji. Kull ħaġa li tuża ħin ta’ 64 bit hija sigura għall-futur prevedibbli.