PHP 中用於在 MySQL 中插入的日期格式
 
MySQL 是一個 RDBMS 資料庫,用於儲存關係資料。它支援各種資料型別,Date 就是其中之一。由於 MySQL 僅支援特定的日期格式,因此你需要在將日期插入資料庫之前格式化日期;否則,DB 將丟擲錯誤。
本文將介紹如何在將日期插入 MySQL 資料庫之前在 PHP 中格式化日期。
MySQL 支援 5 種日期格式。
- DATE:- YYYY-MM-DD只儲存- 1000-01-01 到 9999-12-31範圍內沒有時間的日期。例如,- 2021-10-28。
- DATETIME:- YYYY-MM-DD HH:MI:SS。它將日期與時間儲存在- 1000-01-01 00:00:00 到 9999-12-31 23:59:59範圍內。例如,- 2021-10-28 10:30:24
- TIMESTAMP:- YYYY-MM-DD HH:MI:SS。它將日期與時間儲存在- 1970-01-01 00:00:01 到 2038-01-09 03:14:17範圍內。例如,- 2021-10-28 10:30:24
- TIME:- HH:MI:SS。它將沒有日期的時間儲存在- -838:59:59 到 838:59:59範圍內。例如,- 10:30:24
- YEAR:- YYYY或- YY。它在- 70(1970)-69(2069)範圍內的 4 位或 2 位數字儲存年份 2 位和- 1901-2155 | 0000表示 4 位數字。例如,- 2021。
在學習解決方案之前,讓我們瞭解一下 date() 的概念。
PHP 中的 date()
它是一個內建的 PHP 函式,用於返回格式化的日期字串。
date() 的語法
date($format, $timestamp);
引數
$format:這是一個強制引數,用於指定輸出日期字串格式。其中一些選項是:
- d- 01 到 31 範圍內的月份中的第幾天
- m- 01 到 12 範圍內月份的數字表示
- Y- 年份的四位數表示
- y- 年份的兩位數表示
- H- 00 到 23 範圍內的兩位數表示小時
- i- 00 到 59 範圍內一分鐘的兩位數表示
- s- 00 到 59 範圍內秒的兩位數表示
$timestamp:它是一個可選引數,以整數格式指定 Unix 時間戳。如果未提供,則將採用預設值作為當前本地時間。
示例程式碼:
<?php
    $formated_DATETIME = date('Y-m-d H:i:s');
    echo $formated_DATETIME. "<br>";
    // 2021-10-27 14:02:16
    $formated_DATE = date('Y-m-d');
    echo $formated_DATE. "<br>";
    // 2021-10-27
    $formated_TIME = date('H:i:s');
    echo $formated_TIME. "<br>";
    //14:03:57
    $formated_YEAR = date('Y');
    echo $formated_YEAR. "<br>";
    // 2021
?>
輸出:
2021-10-27 14:02:16
2021-10-27
14:03:57
2021
PHP 中的 date_format()
它是一個內建的 PHP 函式,它將 DateTime 物件作為輸入並返回格式化的日期字串。
date_format() 的語法
date_format($dateObject, $format);
引數
$dateObject:它是一個強制引數,用於指定一個 DateTime 物件。
$format:這是一個強制引數,用於指定輸出日期字串格式。其中一些選項是:
- d- 01 到 31 範圍內的月份中的第幾天
- m- 01 到 12 範圍內月份的數字表示
- Y- 年份的四位數表示
- y- 年份的兩位數表示
- H- 00 到 23 範圍內的兩位數表示小時
- i- 00 到 59 範圍內一分鐘的兩位數表示
- s- 00 到 59 範圍內秒的兩位數表示
示例程式碼:
<?php
    $date = date_create("2021/10/27");
    $formated_DATETIME = date_format($date, 'Y-m-d H:i:s');
    echo $formated_DATETIME. "<br>";
    $formated_DATE = date_format($date, 'Y-m-d');
    echo $formated_DATE. "<br>";
    $formated_TIME = date_format($date, 'H:i:s');
    echo $formated_TIME. "<br>";
    $formated_YEAR = date_format($date, 'Y');
    echo $formated_YEAR. "<br>";
?>
輸出:
2021-10-27 00:00:00
2021-10-27
00:00:00
2021
Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.
LinkedIn