PHP 中用于在 MySQL 中插入的日期格式

Shraddha Paghdar 2023年1月30日
  1. PHP 中的 date()
  2. PHP 中的 date_format()
PHP 中用于在 MySQL 中插入的日期格式

MySQL 是一个 RDBMS 数据库,用于存储关系数据。它支持各种数据类型,Date 就是其中之一。由于 MySQL 仅支持特定的日期格式,因此你需要在将日期插入数据库之前格式化日期;否则,DB 将抛出错误。

本文将介绍如何在将日期插入 MySQL 数据库之前在 PHP 中格式化日期。

MySQL 支持 5 种日期格式。

  1. DATE: YYYY-MM-DD 只存储 1000-01-01 到 9999-12-31 范围内没有时间的日期。例如,2021-10-28
  2. DATETIMEYYYY-MM-DD HH:MI:SS。它将日期与时间存储在 1000-01-01 00:00:00 到 9999-12-31 23:59:59 范围内。例如,2021-10-28 10:30:24
  3. TIMESTAMPYYYY-MM-DD HH:MI:SS。它将日期与时间存储在 1970-01-01 00:00:01 到 2038-01-09 03:14:17 范围内。例如,2021-10-28 10:30:24
  4. TIMEHH:MI:SS。它将没有日期的时间存储在 -838:59:59 到 838:59:59 范围内。例如,10:30:24
  5. YEARYYYYYY。它在 70(1970)-69(2069) 范围内的 4 位或 2 位数字存储年份 2 位和 1901-2155 | 0000 表示 4 位数字。例如,2021

在学习解决方案之前,让我们了解一下 date() 的概念。

PHP 中的 date()

它是一个内置的 PHP 函数,用于返回格式化的日期字符串。

date() 的语法

date($format, $timestamp);

参数

$format:这是一个强制参数,用于指定输出日期字符串格式。其中一些选项是:

  1. d - 01 到 31 范围内的月份中的第几天
  2. m - 01 到 12 范围内月份的数字表示
  3. Y - 年份的四位数表示
  4. y - 年份的两位数表示
  5. H - 00 到 23 范围内的两位数表示小时
  6. i - 00 到 59 范围内一分钟的两位数表示
  7. 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:这是一个强制参数,用于指定输出日期字符串格式。其中一些选项是:

  1. d - 01 到 31 范围内的月份中的第几天
  2. m - 01 到 12 范围内月份的数字表示
  3. Y - 年份的四位数表示
  4. y - 年份的两位数表示
  5. H - 00 到 23 范围内的两位数表示小时
  6. i - 00 到 59 范围内一分钟的两位数表示
  7. 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 Paghdar avatar Shraddha Paghdar avatar

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

相关文章 - PHP MySQL