Heim  >  Artikel  >  Backend-Entwicklung  >  Sammlung gängiger Datums- und Uhrzeitoperationen in PHP

Sammlung gängiger Datums- und Uhrzeitoperationen in PHP

安安杰尼
安安杰尼Original
2020-04-30 15:51:35196819Durchsuche

Nachfragehintergrund

PHP-Programmierer müssen in der täglichen Entwicklung häufig verschiedene Zeiten berechnen, von denen einige oft komplizierter sind. Wir haben die folgenden häufig verwendeten Zeiten speziell zusammengestellt und es wird empfohlen, sie zu sammeln. Detailliertere Betriebsfunktionen sind in den Selbstabruf-https://github.com/xmgb-cj/date

Code

1 integriert. Holen Sie sich den ersten und letzten Tag des Vormonats

echo date('Y-m-01', strtotime('-1 month'));
echo date('Y-m-t', strtotime('-1 month'));

2. Holen Sie sich den ersten und letzten Tag des Monats

$BeginDate=date('Y-m-01', strtotime(date("Y-m-d")));
echo $BeginDate;
echo date('Y-m-d', strtotime("$BeginDate +1 month -1 day"));

Besorgen Sie sich das Jahr, den Monat, den Tag und die Anzahl der Tage des Tages

echo " 本月共有:".date("t")."天";
echo " 当前年份".date('Y');
echo " 当前月份".date('m');
echo " 当前几号".date('d');

4 der erste und letzte Tag der Woche Letzter Tag

//当前日期
$sdefaultDate = date("Y-m-d");
//$first =1 表示m每周星期一为开始日期 0表示每周日为开始日期
$first = 1;
//获取当前周的第几天 周日是 0 周一到周六是 1 - 6
$w = date('w', strtotime($sdefaultDate));
//获取本周开始日期,如果$w是0,则表示周日,减去 6 天
$week_start = date('Y-m-d', strtotime("$sdefaultDate -".($w ? $w - $first : 6).' days'));
//本周结束日期
$week_end = date('Y-m-d',strtotime("$week_start +6 days"));

5. Bestimmen Sie, welcher Wochentag das aktuelle Datum ist

$weekarray=array("日","一","二","三","四","五","六");
echo "星期".$weekarray[date("w")];

6. Berechnen Sie die Anzahl der Tage zwischen zwei Daten

<?php
/**
 * 求两个日期之间相差的天数
 * (针对1970年1月1日之后,求之前可以采用泰勒公式)
 * @param string $day1
 * @param string $day2
 * @return number
 */
function diffBetweenTwoDays ($day1, $day2)
{
  $second1 = strtotime($day1);
  $second2 = strtotime($day2);
    
  if ($second1 < $second2) {
    $tmp = $second2;
    $second2 = $second1;
    $second1 = $tmp;
  }
  return ($second1 - $second2) / 86400;
}
$day1 = "2013-07-27";
$day2 = "2013-08-04";
$diff = diffBetweenTwoDays($day1, $day2);
echo $diff."\n";

Verbesserung

1. Integrieren Sie eine leistungsfähigere Zeitoperationsbibliothek, laden Sie sie beispielsweise selbst herunter https://github.com/xmgb-cj/date In einigen Projekten in sozialen Szenarien , Benutzer veröffentlichen dynamische Inhalte, die eine humanisierte Anzeige der Veröffentlichungszeit erfordern, z. B. vor 1 Minute, vor 1 Stunde, vor 1 Monat usw., können Sie die folgende Funktion in der Bibliothek verwenden

$time = new Time();
$resp = $time->timeDiff(&#39;2020-04-30 12:00:00&#39;);
var_dump($resp);

2. Ein weiteres Beispiel ist die Berechnung der Differenz zwischen zwei Zeiten. Um die Differenz in Tagen, Monaten, Quartalen und Jahren herauszufinden, können Sie den folgenden Code verwenden, um die Differenz in Monaten zu ermitteln, die durch den zweiten Parameter gesteuert wird .

$date = &#39;2020-01-30&#39;;
$month = floor(abs($time->dateDiff($date, &#39;M&#39;)));

3. Bestimmen Sie das Sternzeichen des Stammes, des Zweigs und des Sternzeichens, zu dem das Datum gehört. Eine der am häufigsten verwendeten Methoden besteht darin, festzustellen, ob ein bestimmtes Datum ein Werktag ist Diese Online-Schnittstelle ist nicht verfügbar. Persönlich wird empfohlen, selbst eine Feiertagsdatentabelle zu pflegen. Sie kann einmal im Jahr gepflegt werden, wenn das Land gesetzliche Feiertage bekannt gibt.

Das obige ist der detaillierte Inhalt vonSammlung gängiger Datums- und Uhrzeitoperationen 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