Un marcaj de timp sau un marcaj de timp este ora curentă la care un eveniment este realizat (sau înregistrat) de către un computer sau o cameră digitală. Data și ora curente sunt înregistrate într-un fișier și înregistrează atunci când datele sunt create, executate, modificate sau eliminate. Un computer înregistrează data și ora la care se efectuează o acțiune asupra unui document sau folder. Un alt exemplu de marcaj de timp este că o cameră digitală înregistrează data și ora unei fotografii atunci când se face clic.
Putem converti o marca temporală UNIX în formate de dată și oră care pot fi citite de om în diferite limbaje de programare. Aici, vom discuta despre cum să convertiți marca temporală în prezent în diferite limbaje de programare.
1. Marcaj temporal până la data în JavaScript
Toată funcția care funcționează cu data și ora în JavaScript utilizează un obiect Date() și metodele acestuia. Obiectul Date oferă diferite moduri de a obține marcajul de timp curent al mașinii în JavaScript. JavaScript oferă și returnează rezultatul marcajului de timp al mașinii în microsecunde începând cu 1 ianuarie 1970 00:00:00 UTC.
Obțineți ora curentă în JavaScript:
În JavaScript, atunci când un obiect Date este creat fără niciun argument, acesta utilizează ora curentă, deci folosind codul de mai jos vom obține marcajul de timp curent al dispozitivului.
current_timestamp.html
var timestamp = new Date().getTime()/1000; document.write(timestamp);
Deschideți fișierul în orice browser acceptat și veți vedea marcajul de timp actual.
Ieșire
JavaScript oferă mai multe funcții pentru a converti marcajele de timp în dată și oră într-un format diferit pe care oamenii îl pot citi. Aceste funcții sunt după cum urmează:
Funcţie | Descriere |
---|---|
toDateString | Convertește porțiunea dată a obiectului Date într-un șir care poate fi citit de om. |
toTimeString | Convertește porțiunea de timp a obiectului Date, astfel încât oamenii să o poată citi. |
toString | Acesta convertește obiectul Date într-o valoare șir. |
toLocaleString | Acesta convertește obiectul Date într-un șir, folosind convențiile locale. |
toLocaleDateString | Returnează singura dată a obiectului Date în format șir, folosind convențiile locale. |
toLocaleTimeString | Returnează doar ora obiectului Date în format șir, folosind convențiile locale. |
la JSON | Returnează data ca date JSON în format șir. |
toISOString | Returnează data sub formă de șir, folosind standardul ISO. |
toUTCString() | Acesta convertește obiectul Date într-un șir bazat pe timpul universal. |
Convertiți marca temporală în dată în JavaScript
Timestamp_to_date.html
var timestamp = Date.now()/1000; document.write(timestamp);//current timestamp var datetime = new Date(timestamp * 1000); document.write(' <br>'); document.write(datetime); document.write(' <br>'); document.write(datetime.toDateString()); document.write(' <br>'); document.write(datetime.toTimeString()); document.write(' <br>'); document.write(datetime.toString()); document.write(' <br>'); document.write(datetime.toLocaleString()); document.write(' <br>'); document.write(datetime.toLocaleDateString());
Ieșire
2. Timp la data în Java
În Java , o marca temporală poate fi convertită cu ușurință în dată folosind un constructor al clasei java.util.Date. Un constructor al clasei Date ia un parametru de valoare lungă. Deci, este necesară convertirea unui obiect Timestamp într-o valoare lungă folosind Fă-ți timp() Metodă de java.sql.Timestamp clasă.
a) Convertiți timestamp în date în Java folosind constructorul Date
Trecând pe lângă Timestamp-ul obiect la Data constructor, putem converti valoarea actuală a marcajului de timp al dispozitivului în dată. Luați în considerare următorul exemplu:
import java.sql.Timestamp; import java.util.Date; public class TimestampToDateExample1 { public static void main(String args[]){ Timestamp timestamp = new Timestamp(System.currentTimeMillis()); Date date = new Date(timestamp.getTime()); System.out.println(date); } }
Ieșire
b) Convertiți marcajul de timp în dată în Java utilizând Data Reference
Putem obține chiar și tipul Date prin simpla atribuire a obiectului Timestamp la referința de dată.
import java.sql.Timestamp; import java.util.Date; public class TimestampToDateExample2 { public static void main(String args[]){ Timestamp timestamp = new Timestamp(System.currentTimeMillis()); Date date = timestamp; System.out.println(date); } }
Ieșire
c) Convertiți marca temporală în dată în Java utilizând clasa Calendar
The getInstance() Metodă de java.util.Calendar clasa este o metodă statică, care este utilizată cu obiectul calendar pentru a obține instanța calendarului pe baza fusului orar curent setat de Java Runtime Environment.
import java.sql.Timestamp; import java.util.Calendar; import java.util.Date; public class TimestampToDateExample3 { public static void main(String args[]){ Timestamp timestamp = new Timestamp(System.currentTimeMillis()); Calendar calendar = Calendar.getInstance(); calendar.setTimeInMillis(timestamp.getTime() ); System.out.println(calendar.getTime()); } }
Ieșire
3. Marcaj temporal la data în Python
Piton are mai multe module precum ora, data ora și calendar care se ocupă cu diferite date și format de ore. Un marcaj temporal UNIX a transmis mii de secunde între o anumită dată și oră începând cu 1 ianuarie 1970, la UTC. Putem obține aceste marcaje de timp și le putem converti în data și ora curente.
Obțineți marcajul de timp actual folosind ora modulului
Modulul timp oferă multe metode legate de timp; unul dintre ei este timp care returnează numărul de secunde de la epocă.
import time; timestamp = time.time(); print(timestamp);
Captură de ecran și ieșire
Obțineți marcajul de timp actual folosind modulul datetime
Modulul datetime oferă clase care manipulează data și ora într-un mod orientat pe obiecte. Un astfel de modul este datetime.datetime.now care returnează numărul de secunde de la epocă în microsecunde.
data convertită în șir
import datetime; timestamp = datetime.datetime.now().timestamp(); print(timestamp);
Captură de ecran și ieșire
Obțineți marcajul de timp actual folosind calendarul modulului:
Python oferă, de asemenea, un calendar modul pentru a obține marcajul de timp actual. Folosind modulul calendar, vom folosi timegm metoda de a obține un marcaj de timp. Cu toate acestea, nu este recomandat să utilizați un modul de calendar deoarece veți pierde câteva milisecunde sau nanosecunde.
import time; timestamp = calendar.timegm(time.gmtime()); print(timestamp);
Captură de ecran și ieșire
Convertiți marcajul de timp în DateTime în Python
Vom folosi pur și simplu fromtimestamp metoda a datetime modul pentru a obține data din marcajul temporal UNIX. Metoda datetime.fromtimestamp() ia valoarea marcajului de timp ca parametru de intrare și returnează rezultatul datei și orei curente locale.
import time; import datetime; from datetime import datetime; timestamp = time.time(); print(timestamp); # 1610524738.8164573 date_obj = datetime.fromtimestamp(timestamp); print('current date and time:', date_obj); # current date and time: 2021-01-13 13:28:58.816457
Captură de ecran și ieșire
Convertiți marcajul de timp în data formatată în Python
Pentru a obține data și ora într-un anumit format, puteți utiliza strftime metodă. The strftime() metoda convertește obiectele datetime în formatul de șir specificat.
Exemplul 1:
import time; from datetime import datetime; timestamp = time.time(); print(timestamp); # 1610527190.912418 date_obj = datetime.fromtimestamp(timestamp).strftime('%d-%m-%Y'); print('current date:', date_obj); # current date: 13-01-2021
Captură de ecran și ieșire
Exemplul 2:
import time; timestamp = time.gmtime(); date_time1 = time.strftime('%d-%m-%Y %H:%M:%S', timestamp); date_time2 = time.strftime('%x %X', timestamp); date_time3 = time.strftime('%c', timestamp); print(date_time1); # 13-01-2021 09:19:44 print(date_time2); # 01/13/21 09:19:44 print(date_time3); # Wed Jan 13 09:19:44 2021
Captură de ecran și ieșire
4. Timp la data în PHP
Putem converti cu ușurință marcajul de timp în dată/oră folosind încorporat data(), ora() , funcții. Un marcaj temporal UNIX poate fi convertit în orice format de dată specificat în PHP . Există o mulțime de moduri de a obține valoarea actuală a marcajului de timp în PHP. Aceste funcții returnează data și ora în formatul de șir specificat.
timp(): The timp() funcția este una dintre funcțiile populare și utilizate pe scară largă pentru a obține marcajul de timp actual în PHP. Această funcție nu necesită niciun argument pentru a obține valoarea marcajului de timp.
$current_timestamp = time();
strtotime() : The strtotime() funcția este folosită în principal pentru a obține valoarea marcajului de timp UNIX. Există mai multe șiruri de dată sau oră acceptate care pot fi transmise ca argument în această funcție (cum ar fi „duminica viitoare”, „+1 săptămână”, „+10 ore”, „acum” etc.). Parametrul șir „acum” în strtotime() funcția returnează marcajul de timp actual.
$current_timestamp = strtotime('now');
mktime(): The mktime() Funcția este, de asemenea, utilizată pentru a returna marcajul temporal UNIX, dar necesită un set de parametri de dată, cum ar fi oră, minut, secundă, lună, zi, an.
$current_timestamp = mktime(date('H'),date('i'),date('s'),date('m'),date('d'),date('Y'));
Obțineți marcajul de timp actual în PHP
<?php $current_timestamp_using_time = time(); echo 'timestamp using time(): $current_timestamp_using_time'; echo '</br>'; $current_timestamp_using_strtotime = strtotime('now'); echo 'timestamp using strtotime(): $current_timestamp_using_strtotime'; $current_timestamp_using_kmtime = mktime(date('H'),date('i'),date('s'),date('m'),date('d'),date('Y')); echo '<br>'; echo 'timestamp using mktime(): $current_timestamp_using_kmtime'; ?>
Ieșire
timestamp using time(): 1610540287 timestamp using strtotime(): 1610540287 timestamp using mktime(): 1610540287
Obțineți marcajul de timp actual în microtime folosind funcția microtime().
Ieșire
1610541098.9467
Obțineți marcajul de timp actual folosind clasa DateTime
PHP DateTime clasa oferă o abordare orientată pe obiect pentru a manipula data și ora.
format('U'); echo '<br>'; $timestamp2 = new Datetime('now'); echo $timestamp2->format('U'); ?>
Ieșire
1610541454 1610541454
Convertiți marca temporală actuală în data în PHP
<?php echo date('m/d/Y', time()); echo '</br>'; echo date('m/d/Y H:i:s', microtime(true)); echo '<br>'; $timestamp1 = new Datetime(); echo date('d/m/Y', $timestamp1->format('U')); ?>
Ieșire
01/13/2021 01/13/2021 12:36:25 13/01/2021
Mai jos sunt câteva formate diferite de date care pot fi citite în PHP.
mm/zz/aaaa | $data = data('l/d/Y', $actual_timestamp); |
zz/ll/aaaa | $data = data('d/l/Y', $actual_timestamp); |
Cu timpul | $data = data('d F Y H:i:s', $actual_timestamp); |
Fără timp | $data = data('d F Y', $actual_timestamp); |
5. Timp la data în MySQL
În MySQL , funcția FROM_UNIXTIME() convertește o valoare de marcaj temporal în dată și oră. Funcția FROM_UNIXTIME() returnează diferite tipuri de date/rezultate de timp, iar formatul acesteia se bazează pe parametrii trecuți în ea. Aceste interogări sunt:
interogare MySQL | Rezultat |
---|---|
SELECT UNIX_TIMESTAMP(NOW()) (aici acum() este opțional) | returnează ora actuală a epocii |
SELECTAȚI UNIX_TIMESTAMP(CURDATE()) | se întoarce astăzi la miezul nopții |
SELECTAȚI UNIX_TIMESTAMP(DATE_ADD(CURDATE(),INTERVAL -1 DAY)) | se întoarce ieri la miezul nopții |
SELECTAȚI UNIX_TIMESTAMP(CONCAT(YEAR(CURDATE()),'-01-01')) | revine la 1 ianuarie a anului curent |
SELECTAȚI UNIX_TIMESTAMP(șir de timp) | convertește o dată în oră de epocă, iar formatul orei este AAAA-LL-ZZ HH:MM:SS sau AAAMMZZ sau AAAAMMZZ |
SELECT FROM_UNIXTIME (marca temporală a epocii, format opțional de ieșire) | convertește ora epocii în dată; formatul implicit de ieșire este AAAA-LL-ZZ HH:MM:SS |
Să încercăm această funcție într-un exemplu pentru a converti marca temporală în dată sau dată/oră. La început, vom crea un tabel simplu cu o coloană de int tip. După aceea, îl convertim în marcaj de timp și apoi în dată/oră.
Crearea unui tabel:
mysql> CREATE TABLE TimestamptoDateTable (CurrentTimeStamp int(11));
Interogare și ieșire
Inserarea înregistrărilor de marcaj temporal:
mysql> INSERT INTO TimestamptoDateTable VALUES(1610543287);
Interogare și ieșire
Afișează toate înregistrările unui tabel:
mysql> SELECT * FROM TimestamptoDateTable;
Interogare și ieșire
Sintaxă pentru a converti marca temporală în dată/oră care poate fi citită:
mysql> SELECT from_unixtime(yourColumnName) from yourTableName;
Convertiți marca temporală în dată/oră care poate fi citită:
mysql> SELECT FROM_UNIXTIME(CurrentTimeStamp) from TimestamptoDateTable;
Interogare și ieșire
Sintaxă pentru a converti marca temporală de mai sus în data oră formatată:
mysql> SELECT FROM_UNIXTIME(YourColumnName, '%Y %D %M %h:%i:%s') FROM YourTableName;
Convertiți marcajul de timp în format data oră:
mysql> SELECT FROM_UNIXTIME(CurrentTimeStamp, '%Y %D %M %h:%i:%s') FROM TimestamptoDateTable;
Interogare și ieșire