Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte grafische Erläuterung der Zeitfunktion Datum und häufig verwendete Zeitberechnungen in PHP

Detaillierte grafische Erläuterung der Zeitfunktion Datum und häufig verwendete Zeitberechnungen in PHP

墨辰丷
墨辰丷Original
2018-05-22 15:42:121787Durchsuche

In diesem Artikel werden hauptsächlich relevante Kenntnisse über die Zeitfunktion Datum und häufig verwendete Zeitberechnungen in PHP vorgestellt, die einen sehr guten Referenzwert haben. Schauen wir es uns mit dem Editor an

Es wurde bis heute, gestern, diese Woche, diesen Monat, dieses Quartal, dieses Jahr, letzte Woche, letzten Monat, letztes Quartal usw. verwendet. Zeitstempel, nutzen Sie dies. Ich habe in letzter Zeit viel Zeit, daher habe ich vor, die relevanten Zeitwissenspunkte von PHP zusammenzufassen und zu studieren

1 Lesen Sie die PHP-Handbuch-Datumsfunktion

Gemeinsame Zeiten Funktion:

checkdate() prüft, ob eine Uhrzeit korrekt ist

date_default_timezone_get() ruft die von der verwendete Zeitzone ab Aktuelles Skript

date_default_timezone_set() legt das Skript fest. Die verwendete Zeitzone ini_set() kann ebenfalls erfüllt werden, oder die Konfigurationsdatei ändern

 date_sunrise() date_sunset() gibt die Sonnenaufgangszeit und die Sonnenuntergangszeit zurück des angegebenen Datums und Ortes

date() format Ein Datum, Details finden Sie weiter unten

 getdate() ruft die relevanten Informationen zu Datum und Uhrzeit ab

 gettimeofday( ) ruft die relevanten Informationen der aktuellen Uhrzeit ab

 idate() ändert die Ortszeit. Das Datum wird als Ganzzahl formatiert, akzeptiert aber nur ein Zeichen als Parameter

Microtime() gibt den aktuellen Zeitstempel zurück und Sekunden

mktime() ruft den Zeitstempel eines Datums ab

strtotime() analysiert die Datumssekunden des englischen Textes in einen Zeitstempel

2, ausführliche Erklärung von wichtig Funktionen

date() formatiert ein Datum

 string date( string $format [, int $timestamp] )

 d Der Tag des Monats, das heißt, die Zahl, diese hat führende Nullen, wie zum Beispiel 01,02

D Der Wochentag, der im Englischen die Abkürzung für den Wochentag ist, Mo bis Sun

l (Kleinbuchstabe L) Der Wochentag, dies ist das vollständige englische Format, Sonntag bis Samstag

N Verwenden Sie Zahlen, um die Wochentage darzustellen, 1 für Montag, 7 für Sonntag

S Sonntag, 6 ist Samstag

z Die Anzahl der Tage im Jahr 0 bis 365

W

m  Der Monat im numerischen Format mit führender 0

Die Anzahl der Tage, die der Monat haben sollte

L  Erkennen Sie, ob es ein Schaltjahr ist, das Schaltjahr ist 1, der Monat ist 0

 Y  Das durch 4 Ziffern dargestellte Jahr

 y  Y   dargestellt durch 2 Ziffern Jahr

 a  Kleiner AM- oder PM-Wert

 A  Großbuchstabe AM- oder PM-Wert

 g 12-Stunden-Format, Nr führende 0

 G 24-Stunden-Format, ohne führende 0

h 12-Stunden-Format, mit führende 0

H >

S , ist 1, ist nicht 0

 T  Die Zeitzone, in der sich diese Maschine befindet

  c  2017-05-08T 15:22:21+00:00 Zeit im Format

U Die Anzahl von Sekunden seit 1970

Detaillierte Erklärung der idate()-Funktion

Der Unterschied zum Datum besteht darin, dass diese Funktion nur einen Parameter Datum übergeben kann () kann mehrere Parameter übergeben

B Zeit im Stundenformat

i Minuten

I Gibt 1 zurück, wenn die Sommerzeit aktiviert ist, andernfalls 0

L Gibt 1 zurück, wenn es ein Schaltjahr ist, andernfalls 0

m  Die Zahl des Monats

s Die Anzahl der Sekunden t Die Gesamtzahl der Tage in diesem Monat U Die Anzahl der Sekunden seit 1970

w Der Wochentag Tag

  W   W                                                                                        cco Hand in 1 oder 2 Ziffern 〈 🎜 〈 🎜 〉 >

Z

Verwendungsbeispiele

      strtotime ("now");

      strtotime ("10 September 2017");

      strtotime ("+1 day");

      strtotime ("+1 week");

      strtotime ("+1 week 2 days 4 hours 2 seconds");

      strtotime ("next Thursday");
      strtotime ("last Monday");

3, Zusammenfassung häufiger Zeiten

$times = [];
function makeTime(){
  //获取今日开始时间戳和结束时间戳
  $beginToday=mktime(0,0,0,date('m'),date('d'),date('Y'));
  $endToday=mktime(0,0,0,date('m'),date('d')+1,date('Y'))-1;
  $times['today']['begin'] = $beginToday;
  $times['today']['end'] = $endToday;

  //获取昨日起始时间戳和结束时间戳
  $beginYesterday=mktime(0,0,0,date('m'),date('d')-1,date('Y'));
  $endYesterday=mktime(0,0,0,date('m'),date('d'),date('Y'))-1;
  $times['yesterday']['begin'] = $beginYesterday;
  $times['yesterday']['end'] = $endYesterday;

  //获取上周起始时间戳和结束时间戳
  $beginLastweek=mktime(0,0,0,date('m'),date('d')-date('w')+1-7,date('Y'));
  $endLastweek=mktime(23,59,59,date('m'),date('d')-date('w')+7-7,date('Y'));
  $times['lastWeek']['begin'] = $beginLastweek;
  $times['lastWeek']['end'] = $endLastweek;

  //获取本月起始时间戳和结束时间戳
  $beginThismonth=mktime(0,0,0,date('m'),1,date('Y'));
  $endThismonth=mktime(23,59,59,date('m'),date('t'),date('Y'));
  $times['thisMonth']['begin'] = $beginThismonth;
  $times['thisMonth']['end'] = $endThismonth;

  //获取本周开始时间和结束时间,此例中开始时间为周一
  $defaultDate = date('Y-m-d');
  $first = 1;
  $w = date('w',strtotime($defaultDate));
  $beginWeek = strtotime("$defaultDate-" . ($w?$w-$first:6) . 'days');
  $endWeek = $beginWeek + 6*24*3600-1;
  $times['thisWeek']['begin'] = $beginWeek;
  $times['thisWeek']['end'] = $endWeek;

  //获取上月的起始时间戳和结束时间戳
  $beginLastmonth=mktime(0,0,0,date('m')-1,1,date('Y'));
  $endLastmonth=mktime(23,59,59,date('m')-1,date('t'),date('Y'));
  $times['LastMonth']['begin'] = $beginLastmonth;
  $times['LastMonth']['end'] = $endLastmonth;

  //获取今年的起始时间和结束时间
  $beginThisyear = mktime(0,0,0,1,1,date('Y'));
  $endThisyear = mktime(23,59,59,12,31,date('Y'));
  $times['thisYear']['begin'] = $beginThisyear;
  $times['thisYear']['end'] = $endThisyear;

  //获取上年的起始时间和结束时间
  $beginLastyear = mktime(0,0,0,1,1,date('Y')-1);
  $endLastyear = mktime(23,59,59,12,31,date('Y')-1);
  $times['lastYear']['begin'] = $beginLastyear;
  $times['lastYear']['end'] = $endLastyear;

  //获取本季度开始时间和结束时间
  $season = ceil((date('n'))/3);//当月是第几季度
  $beginThisSeason = mktime(0, 0, 0,$season*3-3+1,1,date('Y'));
  $endThisSeason = mktime(23,59,59,$season*3,date('t',mktime(0, 0 , 0,$season*3,1,date("Y"))),date('Y'));
  $times['thisSeason']['begin'] = $beginThisSeason;
  $times['thisSeason']['end'] = $endThisSeason;

  //获取上季度的起始时间和结束时间
  $beginLastSeason = mktime(0, 0, 0,($season-1)*3-3+1,1,date('Y'));
  $endLastSeason = mktime(23,59,59,($season-1)*3,date('t',mktime(0, 0 , 0,$season*3,1,date("Y"))),date('Y'));
  $times['lastSeason']['begin'] = $beginLastSeason;
  $times['lastSeason']['end'] = $endLastSeason;

  return $times;
}
$times = makeTime();

目前是我之前用到的时间戳,后期还会积累汇总,避免重复造轮子。

相关推荐:

php date函数介绍与使用方法详解

关于PHP MySQL Update语句的相关内容

PHP验证码类ValidateCode

Das obige ist der detaillierte Inhalt vonDetaillierte grafische Erläuterung der Zeitfunktion Datum und häufig verwendete Zeitberechnungen in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn