加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP / MySQL存储和搜索日期

发布时间:2020-12-13 17:06:10 所属栏目:PHP教程 来源:网络整理
导读:像许多人一样,我对 PHP和MySQL中的许多日期函数感到困惑.我需要的是能够在MySQL中存储日期并能够以人类可读的格式在屏幕上查看日期,使用标准Web表单按月,年或两者的组合进行搜索,或者对其进行排序几个月或几年. 示例搜索将是过去5年中所有的费用记录. 我有一
像许多人一样,我对 PHP和MySQL中的许多日期函数感到困惑.我需要的是能够在MySQL中存储日期并能够以人类可读的格式在屏幕上查看日期,使用标准Web表单按月,年或两者的组合进行搜索,或者对其进行排序几个月或几年.

示例搜索将是过去5年中所有的费用记录.

我有一个javascript日历,在表格中输入月份为02-12-2011.

什么是最好的格式.该领域应该是什么?

谢谢

解决方法

请使用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 Date函数.

对于过去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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读