Amser a dyddiad yn PHP

SSL dibynadwy o ddim ond $3.44
hysbysebion
Iterables yn PHP
Cyflwyniad i MySQL/PHP

Mae gan PHP nifer o ddulliau ar gyfer gweithio gyda swyddogaethau amser PHP, megis caffael yr amser a'r dyddiad cyfredol, trin dyddiadau, a fformatio dyddiadau i'w harddangos.

  1. Cael yr amser a'r dyddiad presennol:
  • Mae practis meddygol time() Mae swyddogaeth yn dychwelyd y stamp amser cyfredol, sef nifer yr eiliadau ers Ionawr 1af, 1970.
  • Mae practis meddygol date() gellir defnyddio swyddogaeth i fformatio'r dyddiad a'r amser cyfredol yn ôl fformat penodedig.
  • Mae practis meddygol getdate() ffwythiant yn dychwelyd arae cysylltiadol sy'n cynnwys gwybodaeth am y dyddiad a'r amser cyfredol.
  • Mae practis meddygol microtime() mae swyddogaeth yn dychwelyd y stamp amser cyfredol gyda microseconds.
  1. Trin dyddiadau:
  • Mae practis meddygol strtotime() gellir defnyddio swyddogaeth i drosi llinyn dyddiad i stamp amser.
  • Mae practis meddygol mktime() gellir defnyddio swyddogaeth i greu stamp amser ar gyfer dyddiad ac amser penodol.
  • Mae practis meddygol date_create() ac date_create_from_format() gellir defnyddio swyddogaethau i greu gwrthrych dyddiad newydd.
  • Mae practis meddygol date_modify() gellir defnyddio swyddogaeth i addasu gwrthrych dyddiad.
  1. Dyddiadau fformatio ar gyfer arddangos:
  • Mae practis meddygol date() gellir defnyddio swyddogaeth i fformatio stamp amser neu wrthrych dyddiad yn ôl fformat penodedig.
  • Mae practis meddygol date_format() gellir defnyddio swyddogaeth i fformatio gwrthrych dyddiad yn ôl fformat penodedig.
  • Mae practis meddygol strftime() gellir defnyddio swyddogaeth i fformatio stamp amser neu wrthrych dyddiad yn ôl fformat a locale penodedig.
  1. Swyddogaethau Cylchfa Amser:
  • Mae practis meddygol date_default_timezone_set() gellir defnyddio swyddogaeth i osod y gylchfa amser ddiofyn.
  • Mae practis meddygol date_default_timezone_get() gellir defnyddio swyddogaeth i gael y parth amser rhagosodedig.
  • Mae practis meddygol date_timezone_set() gellir defnyddio swyddogaeth i osod y gylchfa amser ar gyfer gwrthrych dyddiad.
  • Mae practis meddygol date_timezone_get() gellir defnyddio swyddogaeth i gael y gylchfa amser ar gyfer gwrthrych dyddiad.
  1. Swyddogaethau calendr:
  • Mae practis meddygol cal_days_in_month() gellir defnyddio swyddogaeth i gael nifer y dyddiau mewn mis ar gyfer blwyddyn a chalendr penodol.
  • Mae practis meddygol cal_from_jd() gellir defnyddio swyddogaeth i drosi cyfrif diwrnod Julian i ddyddiad calendr.
  • Mae practis meddygol cal_info() gellir defnyddio swyddogaeth i gael gwybodaeth am galendr.
  • Mae practis meddygol easter_date() ac easter_days() gellir defnyddio ffwythiannau i gyfrifo dyddiad y Pasg.

Mae'n werth nodi, wrth weithio gyda swyddogaethau dyddiad ac amser, ei bod yn hanfodol cadw swyddogaethau'r gweinydd a'r cleient cylchfa amser a gosodiadau amser arbed golau dydd (DST) mewn golwg. Pan fydd y paramedrau hyn yn cael eu trin yn anghywir, gall camgymeriadau ac effeithiau annisgwyl ddigwydd.

I grynhoi, mae gan PHP ddulliau ar gyfer caffael y ar hyn o bryd amser a dyddiad, trin dyddiadau, fformatio dyddiadau ar gyfer arddangos, a rheoli parthau amser a calendr swyddogaethau. Gallwch gynyddu cywirdeb ac ymarferoldeb eich rhaglenni PHP trwy wybod y swyddogaethau hyn.

  1. Cael yr amser a'r dyddiad presennol:
  • Mae practis meddygol time() Mae swyddogaeth yn dychwelyd y stamp amser cyfredol, sef nifer yr eiliadau ers Ionawr 1af, 1970. Mae'r stamp amser yn fformat a ddefnyddir yn eang ar gyfer storio a chymharu dyddiadau ac amseroedd mewn systemau cyfrifiadurol. Mae'n ddefnyddiol ar gyfer olrhain hyd digwyddiadau, cymharu dyddiadau ac amseroedd, a chynhyrchu IDau unigryw.
$timestamp = time();
echo "Current timestamp: " . $timestamp . "<br>";

Mae practis meddygol dyddiad() gellir defnyddio'r dull i fformatio'r dyddiad a'r amser cyfredol i fformat arferol. Y llinyn fformat a'r stamp amser yw'r unig baramedrau a dderbynnir gan y swyddogaeth dyddiad. Os na roddir stamp amser, defnyddir y stamp amser presennol.

$current_date = date('Y-m-d H:i:s');
echo "Current date: " . $current_date . "<br>";

Mae practis meddygol getdate() dull yn cynhyrchu cysylltiadol amrywiaeth yn cynnwys gwybodaeth gyfredol am ddyddiad ac amser. Dim ond un paramedr y mae'n ei gymryd, y stamp amser, sy'n cael ei osod i'r stamp amser cyfredol os na nodir. Mae'r arae a ddychwelwyd yn cynnwys data megis diwrnod yr wythnos, mis a blwyddyn.

$date_array = getdate();
print_r($date_array);

Mae'r stamp amser presennol mewn microseconds yn cael ei ddychwelyd gan y microamser( ) dull. Mae'n ddefnyddiol ar gyfer pennu'r hyd o sgriptiau a swyddogaethau. Mae'r ffwythiant yn dychwelyd gwerth arnofio gan gynnwys y stamp amser a nifer y microseconds.

$microtime = microtime();
echo "Current microtime: " . $microtime . "<br>";
  1. Trin dyddiadau:
  • I drosi llinyn dyddiad yn stamp amser, defnyddiwch y strtotime( ) dull. Fel dadl, mae'r swyddogaeth yn derbyn llinyn mewn nifer o ffurfiau, megis 'ddoe,' '+1 wythnos,' 'dydd Llun nesaf,' ac yn y blaen. Gellir defnyddio'r dull hwn i drawsnewid mewnbwn defnyddiwr i stamp amser ar gyfer prosesu neu gymharu ychwanegol.
$date_string = 'next Monday';
$timestamp = strtotime($date_string);
echo "Timestamp for " . $date_string . ": " . $timestamp . "<br>";

I gynhyrchu stamp amser ar gyfer diwrnod ac amser penodol, defnyddiwch y mkamser( ) dull. Mae'n derbyn chwe pharamedr, sy'n nodi'r flwyddyn, mis, diwrnod, awr, munud, ac ail. Mae'n dychwelyd y stamp amser ar gyfer y dyddiad a'r amser a ddarparwyd.

$year = 2022;
$month = 11;
$day = 23;
$hour = 12;
$minute = 30;
$second = 0;
$timestamp = mktime($hour, $minute, $second, $month, $day, $year);
echo "Timestamp for " . date('Y-m-d H:i:s', $timestamp) . ": " . $timestamp . "<br>";

Mae practis meddygol date_create() ac date_create_from_format() gellir defnyddio swyddogaethau i greu gwrthrych dyddiad newydd.

Dyddiad ($ amser, $ fformat)

paramedrau

fformat  Gosodwch fformat y stamp amser yn y gwerth a ddychwelwyd. Mae'r swyddogaeth hon yn derbyn pob fformat a dderbynnir gan DateTimeInterface :: fformat ().
Stamp amserGosodwch y stamp amser yn y gwerth a ddychwelwyd. Yn ddiofyn, mae'n dychwelyd y dyddiad a'r amser cyfredol. Mewn geiriau eraill, mae'n rhagosodedig i werth y swyddogaeth amser ().  

I ddiffinio'r fformat, rhaid i chi fod yn gyfarwydd â'r nodau sy'n dynodi'r fformat sy'n cyfateb.

dYn cynrychioli diwrnod y mis (01 i 31)
mYn cynrychioli mis (01 i 12)
yYn cynrychioli blwyddyn (mewn pedwar digid)
l(llythrennau bach 'L') - Yn cynrychioli diwrnod yr wythnos

Yn PHP 8.0 mae'r stamp amser bellach yn nulladwy.

Gwerth dychwelyd

LlwyddiantMae'n dychwelyd llinyn wedi'i fformatio fel y'i diffinnir gan baramedr y fformat.  
Gwallau / EithriadauOs nad yw'r parth amser yn ddilys, bydd y swyddogaeth yn dychwelyd E_WARNING.  

I ddysgu am barthau amser dilys gallwch fynd i hwn cyswllt.

enghraifft

Dychwelwch y dyddiad cyfredol yn y fformat penodedig.

<?php
echo " Date is " . date("Y/m/d") . " ";
echo " Date is " . date("Y.m.d") . " ";
echo " Date is " . date("Y-m-d") . " ";
echo " Date is " . date("l");
?>

Sut i ddefnyddio'r swyddogaeth dyddiad i gael yr amser cyfredol yn PHP

Pasiwch y nodau amser i'r ffwythiant dyddiad i dderbyn yr amser cyfredol yn y fformat penodedig. Y canlynol yw'r cymeriadau amser mwyaf hanfodol a defnyddiol yn PHP.

HFformat 24 awr o awr (00 i 23)
hFformat 12 awr o awr gyda sero blaenllaw (01 i 12)
iCofnodion gyda sero blaenllaw (00 i 59)
sEiliadau gyda seroau blaenllaw (00 i 59)
aMeridiem Ante Lowerte a Post meridiem (am neu pm)
Cael yr amser presennol mewn fformat penodol
<?php
echo "Curent time is " . date("H:i:s");
?>

Ydy'r ffwythiant dyddiad yn dychwelyd amser cleient neu amser gweinydd?

Bydd y swyddogaeth uchod allbwn yr amser presennol. Y peth hanfodol i'w gofio yma yw bod y swyddogaeth dyddiad dychwelyd y gweinydd dyddiad ac amser presennol y peiriant. Mae'r rhan fwyaf o bobl yn penbleth pam nad yw'r swyddogaeth hon yn dychwelyd amser cleient.

Sut i osod parth amser y swyddogaeth dyddiad yn PHP?

Os nad ydych yn cael yr amser cywir gan ddefnyddio'r enghraifft flaenorol, mae'n bosibl bod eich gweinydd wedi'i osod mewn un arall gwlad ac mae parthau amser eich lleoliad presennol a lleoliad eich gweinydd yn wahanol. Yn y senario hwn, efallai y byddwch yn gosod y parth amser y dyddiad swyddogaeth sy'n defnyddio'r set parth amser dyddiad rhagosodedig (“Asia”); swyddogaeth.

<?php
date_default_timezone_set("Asia");
echo "The server time in my zone is " . date("h:i:sa");
?>

Beth yw stamp amser UNIX?

Stamp amser Unix yw nifer yr eiliadau rhwng 01 Ionawr-1970 a'r amser presennol a nodir.

Sut i greu dyddiad yn php

SSL dibynadwy o ddim ond $3.44
hysbysebion

Gallwch greu eich stamp amser neu ddyddiad eich hun yn PHP gan ddefnyddio'r swyddogaeth amser. Yn yr adran hon, byddwch yn dysgu am mkamser swyddogaeth yn PHP 8.

amser (awr, munud, ail, mis, diwrnod, blwyddyn)

Mae paramedrau'r swyddogaeth yn glir wrth eu henwau. Dyma enghraifft:

<?php
$date=mktime(7, 11, 34, 6, 09, 2021);
echo "My created date is " . date("Y-m-d h:i:s", $date);
?>

Sut i greu dyddiad o linyn?

Mae gan PHP swyddogaeth dyddiad defnyddiol iawn o'r enw strtotime (). Mae'r swyddogaeth hon yn trosi llinyn dyddiad darllenadwy dynol yn stamp amser Unix. Os ydych chi eisiau gwybod am amser Unix, gallwch ei ddarllen o'r adran uchod.

strtotime (amser, nawr)

<?php
$date=strtotime("11:00am August 14 2021");
echo "Created date is " . date("Y-m-d h:i:sa", $d);
?>

Y llinyn a dderbyniwyd gan y strtotime rhaid i'r swyddogaeth fod wedi'i fformatio'n gywir ac yn ddilys, fel arall, ni fyddwch yn cael y cywir yn yr allbwn. Isod ceir rhai enghreifftiau sy'n ymwneud â'r strtotime swyddogaeth.

Enghraifft:

<?php
$date=strtotime("yesterday");
echo date("Y-m-d h:i:sa", $date);

$d=strtotime("next Friday");
echo date("Y-m-d h:i:sa", $date);

$d=strtotime("+4 Months");
echo date("Y-m-d h:i:sa", $date);
?>

Sut i gael y gwahaniaeth rhwng dau ddyddiad yn php?

Mae practis meddygol dyddiad_diff () dull yn tynnu dau ddyddiad dilys ac yn allbynnu'r gwahaniaeth ar ffurf nifer o ddyddiau.

<?php
date_diff(datetime1, datetime2, absolute)
?>

Y paramedrau cyntaf a'r ail yw gwrthrychau dyddiad a fydd yn cael eu tynnu a'r trydydd paramedr yw Boole. Yn ddiofyn, mae wedi'i osod i ffug. Os caiff ei osod yn wir, bydd y gwahaniaeth yn gadarnhaol.

Enghraifft:

<?php
$today=date_create("2021-09-05");
$old_date=date_create("2021-08-12");
$difference=date_diff($today,$old_date);
?>

Sut i ychwanegu dyddiau, misoedd, blynyddoedd neu oriau, munudau, ac eiliadau hyd yn hyn yn PHP?

Os ydych chi'n ddatblygwr PHP, efallai eich bod wedi cael sefyllfa lle roedd angen i chi ychwanegu peth amser neu ddyddiad mewn gwrthrych dyddiad arall. Ar gyfer hyn PHP yn rhoi i ni gyda'r dyddiad_ychwanegu swyddogaeth.

Dyddiad gwrthrychYn nodi gwrthrych DateTime a ddychwelwyd gan date_create ()
EgwylYn nodi gwrthrych DateInterval
<?php
$date_to_be_added=date_create("2021-09-15");
date_add($date_to_be_added,date_interval_create_from_date_string("10 days"));
echo date_format($date,"Y-m-d");
?>

Holi ac Ateb

C: Beth yw'r swyddogaeth i gael y dyddiad a'r amser cyfredol yn PHP?
A: Y swyddogaeth i gael y dyddiad a'r amser cyfredol yn PHP yw “dyddiad()”.

C: Sut mae fformatio'r dyddiad a'r amser gan ddefnyddio'r swyddogaeth “dyddiad()”?
A: Mae'r swyddogaeth “dyddiad ()” yn cymryd un paramedr gofynnol, sef llinyn sy'n cynnwys codau fformat. Mae'r codau hyn yn cynrychioli gwahanol rannau o'r dyddiad a'r amser, megis y flwyddyn, mis, diwrnod, awr, munud, ac ail. Er enghraifft, i ddangos y dyddiad a'r amser presennol yn y fformat “Ymd H:i:s”, byddech yn defnyddio'r cod canlynol: dyddiad adleisio (“Ymd H:i:s”);

C: A allaf osod y parth amser wrth ddefnyddio'r swyddogaeth “dyddiad()”?
A: Gallwch, gallwch chi osod y parth amser wrth ddefnyddio'r swyddogaeth “dyddiad()” trwy ddefnyddio'r swyddogaeth “date_default_timezone_set()”. Er enghraifft, i osod y parth amser i Amser Safonol y Môr Tawel, byddech yn defnyddio'r cod canlynol: date_default_timezone_set ('America/Los_Angeles');

C: A oes ffordd i gyfrifo'r gwahaniaeth rhwng dau ddyddiad yn PHP?
A: Gallwch, gallwch ddefnyddio'r dosbarth “DateTime” i gyfrifo'r gwahaniaeth rhwng dau ddyddiad. Er enghraifft, i gyfrifo'r gwahaniaeth rhwng y dyddiad a'r amser presennol a dyddiad ac amser yn y dyfodol, byddech yn defnyddio'r cod canlynol: $current_date = DyddiadTime newydd(); $future_date = DyddiadTime newydd('2022-12-31'); $diff = $current_date->diff($future_date); adlais $diff->format('%R%a diwrnod');

C: Sut mae cael stamp amser o ddyddiad ac amser penodol yn PHP?
A: Gallwch ddefnyddio'r ffwythiant strtotime () i gael stamp amser dyddiad ac amser penodol. Er enghraifft, i gael stamp amser y dyddiad '2022-12-31', byddech yn defnyddio'r cod canlynol: $date = '2022-12-31'; $timestamp = strtotime($date);

C: Sut mae trosi stamp amser i fformat dyddiad ac amser yn PHP?
A: Gallwch ddefnyddio dyddiad y swyddogaeth () i drosi stamp amser i fformat dyddiad ac amser. Er enghraifft, i drosi stamp amser i fformat 'Ymd H:i:s', byddech yn defnyddio'r cod canlynol: $timestamp = 1609459200; $date = date('Ymd H:i:s', $stamp amser);

Ymarferion:

  1. Sut ydych chi'n cael y dyddiad a'r amser cyfredol?
  2. Sut ydych chi'n fformatio dyddiad ac amser?
  3. Sut ydych chi'n cyfrifo'r gwahaniaeth rhwng dau ddyddiad?
  4. Sut mae trosi stamp amser yn ddyddiad ac amser?
  5. Sut mae cael stamp amser dyddiad ac amser penodol?
  6. Sut ydych chi'n cael nifer y dyddiau mewn mis?
  7. Sut ydych chi'n gwirio a yw blwyddyn yn flwyddyn naid?
  8. Sut ydych chi'n cael y parth amser presennol?

Atebion:

  1. Gellir cael y dyddiad a'r amser cyfredol gan ddefnyddio'r swyddogaeth dyddiad(). Er enghraifft: dyddiad (“Ymd H:i:s”);
  2. Gellir fformatio'r dyddiad a'r amser gan ddefnyddio'r swyddogaeth dyddiad () a nodi'r paramedr fformat. Er enghraifft: dyddiad("mdY H:i:s", amser());
  3. Gellir cyfrifo'r gwahaniaeth rhwng dau ddyddiad gan ddefnyddio'r ffwythiant strtotime() a thynnu stampiau amser y ddau ddyddiad. Er enghraifft: $diff = strtotime(“2022-01-01”) – strtotime(“2021-01-01”);
  4. Gellir trosi stamp amser yn ddyddiad ac amser gan ddefnyddio'r ffwythiant dyddiad() a nodi'r stamp amser fel yr ail baramedr. Er enghraifft: dyddiad ("Ymd H:i:s", 1609459200);
  5. Gellir cael stamp amser o ddyddiad ac amser penodol gan ddefnyddio'r ffwythiant strtotime(). Er enghraifft: strtotime (“2022-01-01”);
  6. Gellir cael nifer y diwrnodau mewn mis gan ddefnyddio'r ffwythiant cal_days_in_month(). Er enghraifft: cal_days_in_month(CAL_GREGORIAN, 2, 2022);
  7. Gellir gwirio blwyddyn os yw'n flwyddyn naid gan ddefnyddio'r swyddogaeth dyddiad() a nodi "L" fel y paramedr fformat. Er enghraifft: dyddiad("L", strtotime("2022-01-01"));
  8. Gellir cael y gylchfa amser gyfredol gan ddefnyddio'r ffwythiant date_default_timezone_get().

I ddarllen mwy am y swyddogaethau amser a dyddiad yn y fersiwn PHP 8 diweddaraf, cyfeiriwch at y tudalen swyddogol PHP 8.

Sut mae cael y dyddiad a'r amser cyfredol yn PHP?
Cael y dyddiad cyfredol a roddir cylchfa amser yn PHP?
Trosi stamp amser i amser yn ôl yn PHP?
Trosi fformat dyddiad yn PHP
Sut ydw i'n defnyddio PHP i gael y flwyddyn gyfredol?
Penderfynwch yn gywir a yw'r llinyn dyddiad yn ddyddiad dilys yn y fformat hwnnw
Trosi stamp amser i PHP dyddiad/amser darllenadwy
Trosi llinyn i Date and DateTime

Iterables yn PHP
Cyflwyniad i MySQL/PHP
cau

Cadwch y wybodaeth ddiweddaraf am PHP!

Nid ydym yn sbam!

SSL dibynadwy o ddim ond $3.44
hysbysebion
en English
X
Sgroliwch i'r brig