PHP获取指定时间段其间的 年,月,天,时,分,秒
PHP获取指定时间段之间的 年,月,天,时,分,秒
需求:前端传俩个标准的 时间格式过来,格式像2009-05-12 12:12:30,然后根据需要返回这个时间段的不同单位的表示
对于时间格式的校验我这里代码没贴出来,所以用的时候自己考虑加上
Class Utils { /** * format MySQL DateTime (YYYY-MM-DD hh:mm:ss) 把mysql中查找出来的数据格式转换成时间秒数 * @param string $datetime */ public function fmDatetime($datetime) { $year = substr($datetime,0,4); $month = substr($datetime,5,2); $day = substr($datetime,8,2); $hour = substr($datetime,11,2); $min = substr($datetime,14,2); $sec = substr($datetime,17,2); return mktime($hour,$min,$sec,$month,$day,0+$year); } /** * * 根据俩个时间获取俩个时间的 包含的 年,月数,天数,小时,分钟,秒 * @param String $start * @param String $end * @return ArrayObject */ private function diffDateTime($DateStart,$DateEnd){ $rs = array(); $sYear = substr($DateStart,0,4); $eYear = substr($DateEnd,0,4); $sMonth = substr($DateStart,5,2); $eMonth = substr($DateEnd,5,2); $sDay = substr($DateStart,8,2); $eDay = substr($DateEnd,8,2); $startTime = $this->fmDatetime($DateStart); $endTime = $this->fmDatetime($DateEnd); $dis = $endTime-$startTime;//得到俩个时间的秒数 $d = ceil($dis/(24*60*60));//得到天数 $rs['day'] = $d;//天数 $rs['hour'] = ceil($dis/(60*60));//小时 $rs['minute'] = ceil($dis/60);//分钟 $rs['second'] = $dis;//秒数 $rs['week'] = ceil($d/7);//周 $tem = ($eYear-$sYear)*12;//月份 $tem1 = $eYear-$sYear;//年 if($eMonth-$sMonth<0){//月份相减为负 $tem +=($eMonth-$sMonth); }else if($eMonth==$sMonth){//月份相同 if($eDay-$sDay>=0){ $tem ++; $tem1++; } }else if($eMonth-$sMonth>0){//月份相减正负 $tem1++; if($eDay-$sDay>=0){//且日期相减为正数 $tem +=($eMonth-$sMonth)+1; }else{ $tem +=($eMonth-$sMonth); } } $rs['month'] = $tem; $rs['year'] = $tem1; return $rs; } }
一年多一天,返回的是2年,一个月多一天返回的是2个月,以此推......项目需要,才做此出来,开始我也到网上找这样的例子,但大家都是把年就按365天来算,月就按30天来算,这样算出来的结果肯定是没用的,年有可能是366天,月有可能是31,29,28都有可能

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

日期和時間值的操作是程式設計的一個重要方面,Python語言為此提供了一個有用的內建模組,稱為datetime。但是,在某些情況下,可能需要將DateTime物件轉換為整數值,以便執行特定的操作或計算。在Python中將DateTime轉換為整數有多種方法,每種方法都有自己的優點和缺點。在本文中,我們將深入研究這些方法並檢查每種方法何時適合使用。閱讀本文後,您將全面了解如何在Python中有效地將DateTime物件轉換為整數,並能夠為您的特定程式設計任務選擇最合適的方法。方法一:使用timestamp

使用C#中的DateTime.Today函數取得今天的日期,需要具體程式碼範例C#是一種物件導向的程式語言,它提供了許多內建的類別和方法來處理日期和時間。其中,DateTime類別具有一些非常有用的方法,例如Today屬性,可以用來獲得當天的日期。以下是一個範例程式碼,示範如何使用C#中的DateTime.Today函數來取得今天的日期:usingSystem;

使用C#中的DateTime.AddDays函數為日期加上指定的天數在C#程式設計中,我們常常會遇到需要對日期進行加減運算的情況。 C#中的DateTime類別提供了許多方便的方法和屬性來處理日期和時間,其中包括AddDays函數,它可以用來為指定的日期加上指定的天數。以下是一個具體的程式碼範例,示範如何使用DateTime.AddDays函數為日期加上指定的天數:

所有資料在開始時都會自動分配一個「DOB」(出生日期)。因此,在某些時候處理資料時不可避免地會遇到日期和時間資料。本教學將帶您了解Python中的datetime模組以及使用一些外圍函式庫,如pandas和pytz。在Python中,任何與日期和時間有關的事情都由datetime模組處理,它將模組進一步分為5個不同的類別。類別只是與物件相對應的資料類型。下圖總結了Python中的5個日期時間類別以及常用的屬性和範例。 3個有用的片段1.將字串轉換為日期時間格式,也許是使用datet

Python中有許多優秀的日曆庫和日期庫供我們使用,這些庫可以幫助我們處理日期和日曆相關的操作。接下來,我將為大家介紹幾個常用的選擇,並提供對應的程式碼範例。 datetime庫:datetime是Python內建的日期和時間處理模組,提供了許多日期和時間相關的類別和方法,可以用於處理日期、時間、時間差等操作。範例程式碼:importdatetime#取得當

這篇文章將為大家詳細講解有關PHP返回字符串第一個字符的ASCII值,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章後可以有所收穫。 PHP傳回字串第一個字元的ASCII值引言在php中,取得字串第一個字元的ASCII值是一個常見的操作,涉及到字串處理和字元編碼基礎知識。 ASCII值用於表示字元在電腦系統中的數字值,對於字元比較、資料傳輸和儲存至關重要。過程取得字串第一個字元的ASCII值涉及以下步驟:取得字串:確定要取得ASCII值的字串。它可以是變數、字串常數

這篇文章將為大家詳細講解有關PHP返回一個字符串在另一個字符串中開始位置到結束位置的字符串,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章後可以有所收穫。 PHP中使用substr()函數從字串中擷取子字串substr()函數可從字串中擷取指定範圍內的字元。其語法如下:substr(string,start,length)其中:string:要從中提取子字串的原始字串。 start:子字串開始位置的索引(從0開始)。 length(可選):子字串的長度。如果未指定,則提

mysql datetime報錯的解決方法:1、將datetime改成時間戳timestamp;2、將MySQL升級為高版本;3、執行「ALTER USER 'root'@'localhost' IDENTIFIED BY 'root1' PASSWORD EXPIRE NEVER;」指令即可。
