PHP 顯示當下日期、從日期字串求星期幾、日期的加減運算...等等的日期運用
PHP date()函數
年月日間可用符號 " - " 或 " / " 或 " . " 符號來隔開。
PS | 若使用 date( ) 函數,網頁上出現如下警告訊息:
此為 PHP 時區未設定所致,遇此問題的解決法:
|
範例:直接參考相關用法唄!主要看紅色字部份
,或直接複製所有程式碼,另存成一個 php 檔來觀看唄 ^ ^。
<!doctype html>
<html>
<head>
<meta charset="utf-8"> <title>喵喵笨兔 の 喵喵的家~遊戲天地 - PHP 顯示當下日期、從日期字串求星期幾、日期的加減運算</title> </head> <body> 直接用 date() 函數就可求得當天日期:<br> 現在(今天)年份:<?php echo date("Y"); ?><br>
現在(今天)月份:<?php echo date("m"); ?><br>
現在(今天)幾號:<?php echo date("d"); ?><br>
現在(今天)日期:<?php echo date("Y-m-d"); ?><br> 現在(今天)日期(含時間):<?php echo date("Y/m/d h:i:s"); ?><br> 現在(今天)日期(含時間am/pm):<?php echo date("Y.m.d h:i:s a"); ?><br> 現在(今天)是星期?(英文):<?php echo date("l"); ?><br> 現在(今天)是星期?(數字):<?php echo date("w"); ?><br> 現在時間:<?php echo date("h:i:s"); ?><br> 現在時間幾點幾分:<?php echo date("h:i"); ?><br> 現在時間幾秒:<?php echo date("s"); ?> </body> </html>
範例結果:(網站是外國時區,所以您看到的當天時間或許有一天之差)
直接用 date( ) 函數就可求得當天日期:
現在(今天)年份:2024
現在(今天)月份:12
現在(今天)幾號:03
現在(今天)日期:2024-12-03
現在(今天)日期(含時間):2024/12/03 12:46:30
現在(今天)日期(含時間 am/pm):2024.12.03 12:46:30 am
現在(今天)是星期?(英文):Tuesday
現在(今天)是星期?(數字):2
現在時間:12:46:30
現在時間幾點幾分:12:46
現在時間幾秒:30
PHP strtotime()函數
strtotime() 內的資料,若是日期則以1970-01-01 00:00:00 (您設的時區不同,則初始時間就不同,例如設Asia/Taipei,就變08:00:00了) 為基準換算為'秒';若是日期字串則轉換為日期格式,配合 date() 函數可求得相關日期唄!
範例:直接參考相關用法唄!主要看紅色字部份
,或直接複製所有程式碼,另存成一個 php 檔來觀看唄 ^ ^。
<!doctype html>
<html>
<head>
<meta charset="utf-8"> <title>喵喵笨兔 の 喵喵的家~遊戲天地 - PHP 顯示當下日期、從日期字串求星期幾、日期的加減運算</title> </head> <body> 明天日期:<?php $d=strtotime("tomorrow"); echo date("Y-m-d",$d); ?><br> 昨天日期:<?php $d=strtotime("yesterday"); echo date("Y-m-d",$d); ?><br> 下次星期五日期:<?php $d=strtotime("next friday"); echo date("Y-m-d",$d); ?><br> 一周前日期:<?php $d=strtotime("-1 weeks"); echo date("Y-m-d",$d); ?><br> 三個月後日期:<?php $d=strtotime("+3 months"); echo date("Y-m-d",$d); ?><br> 二年前日期:<?php $d=strtotime("-2 years"); echo date("Y-m-d",$d); ?><br> strtotime('1970-01-01') 顯示結果(秒):<?php echo strtotime('1970-01-01'); ?> </body> </html>
範例結果:(網站是外國時區,所以您看到的當天時間或許有一天之差)
明天日期:2024-12-04PHP 從日期字串顯示中文今天是星期幾?
範例:主要看紅色字部份
,或直接複製所有程式碼,另存成一個 php 檔來觀看唄 ^ ^。
<!doctype html>
<html>
<head>
<meta charset="utf-8"> <title>喵喵笨兔 の 喵喵的家~遊戲天地 - PHP 顯示當下日期、從日期字串求星期幾、日期的加減運算</title> </head> <body> 方法一:<br> <?php
$w=date('w'); //今天,返回數字0~6
$d1='2017-10-20'; //指定日期
$w1=date('w',strtotime($d1)); //指定日期,返回數字0~6
$weekarray=array("日","一","二","三","四","五","六"); //0表示星期日
echo '今天是星期'.$weekarray[$w].'<br>';
echo $d1.'是星期'.$weekarray[$w1];
?>
<p></p>
方法二:<br>
<?php
$date_time="2017-10-21 15:05:24"; //指定日期含時間
list($date)=explode(" ", $date_time); //取出日期部份,去除時間
list($Y,$M,$D)=explode("-",$date); //分離出年月日以便製作時戳
echo $date." (星期".mb_substr( "日一二三四五六",date("w", mktime(0,0,0,$M,$D,$Y)),1,"utf-8").")"; //若沒亂碼,utf-8可不用
echo "<br>";
$date="2017-10-25"; //指定日期不含時間
list($Y,$M,$D)=explode("-",$date); //分離出年月日以便製作時戳
echo $date." (星期".mb_substr( "日一二三四五六",date("w", mktime(0,0,0,$M,$D,$Y)),1,"utf-8").")";
echo "<br>";
$date=date('Y-m-d'); //今天(現在)
list($Y,$M,$D)=explode("-",$date); //分離出年月日以便製作時戳
echo "今天 ".$date." (星期".mb_substr( "日一二三四五六",date("w", mktime(0,0,0,$M,$D,$Y)),1,"utf-8").")";
?> </body> </html>
範例結果:(網站是外國時區,所以您看到的當天時間或許有一天之差)
方法一:方法二:
2017-10-21 (星期六)
2017-10-25 (星期三)
今天 2024-12-03 (星期二)
PHP 日期的加減運算
範例:直接參考相關用法唄!主要看紅色字部份
,或直接複製所有程式碼,另存成一個 php 檔來觀看唄 ^ ^。
<!doctype html>
<html>
<head>
<meta charset="utf-8"> <title>喵喵笨兔 の 喵喵的家~遊戲天地 - PHP 顯示當下日期、從日期字串求星期幾、日期的加減運算</title> </head> <body> 以 strtotime() 函數來換算日期,求得的單位為"秒";一天 = 60秒x60分x24時 = 86400秒<br> 2017-10-22 減 217-10-20 = <?php echo strtotime('2017-10-22')-strtotime('2017-10-20'); ?> 秒<br>
2017-10-25 減 217-10-25 = <?php echo (strtotime('2017-10-25')-strtotime('2017-10-20'))/60/60/24; ?> 天<br>
<?php $today = strtotime(date('Y-m-d')); $day1='2030-01-01';
$endday = strtotime($day1);
$diff = floor(($endday - $today) / 86400);
echo '距離 '.$day1.' 還有 '.$diff.' 天'; ?> </body> </html>
範例結果:
以 strtotime() 函數來換算日期,求得的單位為"秒";一天 = 60秒 x 60分 x 24時 = 86400秒