gpt4 book ai didi

PHP/MySQL 存储和搜索日期

转载 作者:可可西里 更新时间:2023-11-01 07:33:40 25 4
gpt4 key购买 nike

像许多人一样,我对 PHP 和 MySQL 中的许多日期函数完全感到困惑。我需要的是能够在 MySQL 中存储日期并能够以人类可读的格式在屏幕上查看它,使用标准 Web 表单按月、年或两者的组合进行搜索,或对其进行排序在几个月或几年。

示例搜索是过去 5 年 2 月的所有记录。

我有一个 javascript 日历,它以 02-12-2011 的形式输入月份。

用于此的最佳格式是什么。该字段在 MySQL 中应该是什么。

谢谢

最佳答案

请使用 DateTime 对象。

将日期存储在 mysql 中,格式为 DATE

写入数据时

$date = new DateTime($_POST['date']);

or

$date = DateTime::createFromFormat('d-m-Y', $_POST['date']);

$query = sprintf("INSERT INTO `data` SET `date` = '%s'", $date->format('Y-m-d'))

读出数据时创建一个 DateTime 对象。

$date = new DateTime($row['date']);

然后你可以用任何你想要的格式打印它,例如你的 javascript 格式:

echo $date->format('d-m-Y');

http://www.php.net/manual/en/class.datetime.php

对于日期格式:

http://www.php.net/manual/en/function.date.php

就搜索而言,您可以在字段上使用 mysql 日期函数。

过去 5 年 2 月份的所有记录。

SELECT * FROM `data` WHERE MONTH(`date`) = 2 AND YEAR(`date`) >= YEAR(NOW()) - 5

http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html

关于PHP/MySQL 存储和搜索日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5086268/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com