Home > Backend Development > PHP Tutorial > Collection of common date and time operations in PHP

Collection of common date and time operations in PHP

安安杰尼
Release: 2023-04-08 15:18:01
Original
197239 people have browsed it

Requirement background

PHP programmers often need to calculate various times in daily development, often some of which are more complicated. We have specially compiled the following commonly used ones and recommend collecting them. More detailed operation functions are integrated with the self-retrieval https://github.com/xmgb-cj/date

code

1. Get the first and last day of the previous month

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

2. Get the first and last day of the month

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

3. Get the year, month, day and number of days

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

4. Get the first day and last day of the week Last day

//当前日期
$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"));
Copy after login

5. Determine the day of the week the current date is

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

6. Calculate the number of days difference between two dates

<?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";
Copy after login

Promote

1. Integrated a more powerful time operation library, download it by yourself https://github.com/xmgb-cj/date. In some projects in social scenarios, for example, users publish dynamic content that requires humanized display. For humanized display of release time, such as 1 minute ago, 1 hour ago, 1 month ago, etc., you can use the following function in the library

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

2. Another example is to calculate the difference between two times, we get To find out the difference in days, months, quarters, and years, you can use the following code to get the difference in months, which is controlled by the second parameter.

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

3. Determine the stem, branch and zodiac sign to which the date belongs

$time = new Time();
echo $time->magicInfo(&#39;XZ&#39;);
//得到今天的星座
Copy after login

Summary:

There are still many such time and date operation functions in development. One of the more commonly used methods is to determine whether a specified date is a working day. Most of this online interface is not available. Personally, it is recommended to maintain a holiday data table yourself. It can be maintained once a year when the country announces legal holidays.

The above is the detailed content of Collection of common date and time operations in PHP. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template