Home Backend Development PHP Tutorial PHP determines whether a certain day is before or after the specified date_PHP Tutorial

PHP determines whether a certain day is before or after the specified date_PHP Tutorial

Jul 13, 2016 am 10:33 AM
Timestamp

There is such a requirement. The specified date is December 12th. I want to execute event A before December 12th and event B after that. How to judge whether today is before December 12th? Or after?

The procedure is as follows:

<?php
$year = 2010;
$month = 12;  // 月
$day = 12;  // 日
$timeoffset = 8; // 与格林尼治时间 GMT 的时差
list($thisyear, $thismonth, $thisday) = explode('-', date('Y-n-j', time() + $timeoffset * 3600));
if(($thismonth > $month) || ($thismonth == $month && $thisday > $day) || $thisyear > $year) {
	echo '已经过了';
} elseif ($thismonth == $month && $thisday == $day && $thisyear == $year) {
	echo '就是今天了';
} else {
	echo '还没到';
}
?>
Copy after login

Here is the annotated code:

//你还需要知道的另一个变量是年份,不过依你的意思应该是当年。
$timestamp = time();
$dateYear = date('Y', $timestamp);//当前年,依当前需要可以不需要比较,但有时也许会用到,比如你的记录不是当年要处理的
$dateMonth = date('n', $timestamp);//当前月份数字,没有前导零
$dateDay = date('j', $timestamp);//月份中的第几天,没有前导零
//剩下的就是比较了,比如你要比较的日期是 2007-03-01
$eventDate = '2007-03-01';
$eventDateArr = explode('-', $eventDate);
$eventYear = intval($eventDateArr[0]);
$eventMonth = intval($eventDateArr[1]);
$eventDay = intval($eventDateArr[2]);
//上面是年月日的拆分,根据实际情况可以调整,如果你直接可以得到就不需要这样取了。
//之后剩下的就是比较了,先比较年
if($dateYear == $eventYear) {
  //同年
  if($dateMonth == $eventMonth) {
    //同月
    if($dateDay == $eventDay) {
      //同一天,就是当前日期就是事件触发的日期
    } elseif($dateDay > $eventDay) {
      //事件已经过期了
    } else {
      //事件触发日期还没到
    }
  } else {
    //之前或之后,再需要详细判断可以在这里比较哪个月份大
  }
} else {
  //之前或之后,再需要详细判断可以在这里比较哪个年份大
}
//其实这种比较是最简单的逻辑判断,如果你在记录时间触发日期时记录的是 unix 时间戳,这里可以直接进行时间戳比较不过需要处理一下,因为时间戳是精确到秒的
//或者把你记录的日期及其后一天直接转化成 unix 时间戳,时分秒都用 0 ,和当前时间戳比较,细节判断就自己去分析吧,可用函数去查查手册里面 strtotime() ,时间相关函数参数很多,不过用过几次就熟悉了。
Copy after login

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/752485.htmlTechArticleThere is such a requirement. The specified date is December 12th. I want to execute event A before December 12th. , to execute event B later, how to determine whether today is before or after December 12? The procedure is as follows...
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

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Golang time processing: How to convert timestamp to string in Golang Golang time processing: How to convert timestamp to string in Golang Feb 24, 2024 pm 10:42 PM

Golang time conversion: How to convert timestamp to string In Golang, time operation is one of the very common operations. Sometimes we need to convert the timestamp into a string for easy display or storage. This article will introduce how to use Golang to convert timestamps to strings and provide specific code examples. 1. Conversion of timestamps and strings In Golang, timestamps are usually expressed in the form of integer numbers, which represent the number of seconds from January 1, 1970 to the current time. The string is

How to create and name a file/folder based on current timestamp How to create and name a file/folder based on current timestamp Apr 27, 2023 pm 11:07 PM

If you're looking for a way to automatically create and name files and folders based on system timestamps, you've come to the right place. There is a super simple way to accomplish this task. The created folders or files can then be used for various purposes such as storing file backups, sorting files based on date, etc. In this article, we will explain in some very simple steps how to automatically create files and folders in Windows 11/10 and name them according to the system’s timestamp. The method used is a batch script, which is very simple. Hope you enjoyed reading this article. Section 1: How to automatically create and name a folder based on the current timestamp of the system Step 1: First, navigate to the parent folder where you want to create the folder,

Java documentation interpretation: Usage analysis of the currentTimeMillis() method of the System class Java documentation interpretation: Usage analysis of the currentTimeMillis() method of the System class Nov 03, 2023 am 09:30 AM

Java document interpretation: Usage analysis of the currentTimeMillis() method of the System class, specific code examples are required. In Java programming, the System class is a very important class, which encapsulates some properties and operations related to the system. Among them, the currentTimeMillis method is a very commonly used method in the System class. This article will explain the method in detail and provide code examples. 1. Overview of currentTimeMillis method

How to match timestamps using regular expressions in Go? How to match timestamps using regular expressions in Go? Jun 02, 2024 am 09:00 AM

In Go, you can use regular expressions to match timestamps: compile a regular expression string, such as the one used to match ISO8601 timestamps: ^\d{4}-\d{2}-\d{2}T \d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-][0-9]{2}:[0-9]{2})$ . Use the regexp.MatchString function to check if a string matches a regular expression.

How to remove time from date in Excel How to remove time from date in Excel May 17, 2023 am 11:22 AM

Change Date Format in Excel Using Number Format The easiest way to remove time from a date in Excel is to change the number format. This does not remove the time from the timestamp - it just prevents it from displaying in your cell. If you use these cells in calculations, the time and date are still included. To change the date format in Excel using number format: Open your Excel spreadsheet. Select the cell containing your timestamp. In the main menu, select the down arrow at the end of the number format box. Choose a date format. After changing the format, the time will stop appearing in your cells. If you click on one of the cells, the time format is still visible in the formula bar. Use cell formatting

Best Practices for Timestamp Obtaining: A Powerful Tool in Golang Programming Best Practices for Timestamp Obtaining: A Powerful Tool in Golang Programming Dec 29, 2023 am 08:28 AM

Golang Programming Tool: Best Practices for Timestamp Obtaining Introduction: In software development, timestamp is a very common concept. It is a numeric value that identifies the occurrence of a specific event, usually representing the number of milliseconds or nanoseconds since some reference point in time. In Golang, processing timestamps is very simple and efficient. This article will introduce the best practices for obtaining timestamps in Golang and provide specific code examples. Text: Get the current timestamp In Golang, getting the current timestamp is very simple. we can

Timestamp handling in PHP: How to use the strftime function to format a timestamp into a localized date time Timestamp handling in PHP: How to use the strftime function to format a timestamp into a localized date time Jul 30, 2023 am 09:15 AM

Timestamp handling in PHP: How to format a timestamp into a localized date time using the strftime function When developing PHP applications, we often need to deal with dates and times. PHP provides powerful date and time processing functions, among which the strftime function allows us to format timestamps into localized date and time. The strftime function has the following syntax: strftime(string$format[,int$timestamp=ti

How to convert timestamp to integer in PHP How to convert timestamp to integer in PHP Mar 20, 2024 pm 04:24 PM

Timestamp in PHP is an integer form representing time, usually the number of seconds that have passed since the first year of Unix (January 1, 1970 00:00:00 GMT). In programming, we often need to convert timestamps into other forms of integers. Here we will introduce how to convert PHP timestamps into integers, as well as specific code examples. In PHP, we can use the strtotime() function to convert the time string to a timestamp and then use date

See all articles