php日期操作技巧小結

2022-10-06 00:30:21 字數 1498 閱讀 1694

1、php將表單裡面獲取的日期格式轉換成統一的格式

2015-9-9 都統一轉換成 2015-09-09 這樣在資料庫都是統一的格式,方便以後查詢

$year = "2015";

$month = "9";

$day = "09";

var_dump(checkdate($month,$day, $year));//月和日帶有前導0都是符合格式的

if(程式設計客棧checkdate($month,$day, $y程式設計客棧ear)===false);

$unixtime = mktime(2,2,2,$month,$day,$year);//目的是交給php轉換成月和日都帶有前導0的格式統一的格式儲存在資料庫方便以後查詢

var_dump(date("y-m-d",$unixtime));

////交給php轉換成時間戳,然後反轉回來

2、獲取上一天的開始時間戳和結束時間戳

本來思路是:

先用date獲取當天的年月日。單獨獲取。得到年是2015 月是9 日是28

然後減去1就可以了。但問題出來了。

如果今天是1號呢。減去1就變成0了。上個月可能是28天,也可能是30天。

這樣子,先得到上一天的時間戳。讓php自動程式設計客棧去計算。

程式設計客棧strtotime("-1 day");

//得到上一天的時間戳,現在是幾點就得到上一天這個時間點的時間戳,用這種方式好處是解決了上面問題,php會自動去計算上個月多少天

<?php header("content-type:text/html;charset=utf-8");

date_default_timezone_set("asia/shanghai");//設定時區

$last_day = strtotime("-1 day");//得到上一天的時間戳,現在是幾點就得到上一天這個時間點的時間戳

//通過時間戳得到年月日,以便mktime使用

$year = date("y",$last_day);

$month = date("m",$last_day)

$day = date("d",$last_day);

$last_day_begin = mktime(0,0,0,$month,$day,$year);//昨天的一天開始的時間戳

$last_day_end = mktime(23,59,59,$month,$day,$year);

echo '昨天開始時間戳:';

var_dump($last_day_begin);

echo date('y-m-d h:i:s',$last_day_begin);

echo '

';echo '昨天結束時間戳:';

var_dump($last_day_end);

echo date('y-m-d h:i:s',$last_day_end);

echo '

';echo ($last_day_end-$last_day_begin)/(60*60);//恰好24個小時

PHP 日期操作

使用函式 date 實現 顯示的格式 年 月 日 小時 分鐘 秒 相關時間引數 a am 或是 pm a am 或是 pm d 幾日,二位數字,若不足二位則前面補零 如 01 至 31 d 星期幾,三個英文本母 如 fri f 月份,英文全名 如 january h 12 小時制的小時 如 01 至...

PHP日期操作

返回指定月份的第一天 function get the month first day str theyear,themonth 返回指定月份的最後一天 function get the month last day str theyear,themonth 返回指定日期所在周的第一天 週日為第一天...

PHP 日期操作

使用函式 date 實現 顯示的格式 年 月 日 小時 分鐘 秒相關時間引數 a am 或是 pm a am 或是 pm d 幾日,二位數字,若不足二位則前面補零 如 01 至 31 d 星期幾,三個英文本母 如 fri f 月份,英文全名 如 january h 12 小時制的小時 如 01 至 ...