1

我正在获取信用卡详细信息,并且在两个表单字段中获取到期日期,一个用于到期月份,一个用于到期年份,我想将到期日期存储为时间戳。会strtotime("05/2010")创建一个时间戳,还是我也需要过去一天,或者有其他选择吗?

谢谢

4

3 回答 3

2

不,那行不通,strtotime("05/2010")会返回false。您还需要指定一天。但是,这种情况有歧义,是strtotime("01/05/2010")指 2010 年 5 月 1 日还是 2010 年 1 月 5 日?ETC

您可能最好使用mktime()而不是strtotime(),因为您可以明确说明哪些部分是月份和年份,然后将 1 作为日期传递。

$timestamp = mktime(0,0,0,$month,1,$year); // Where $month = 5, $year = 2010
于 2010-05-13T10:58:44.070 回答
1

更好地使用 mktime(): mktime(0, 0, 0, $month, 1, $year)

这将为给定年份中给定月份的第一天生成时间戳,时间为 00:00:00。

于 2010-05-13T10:59:06.633 回答
0

如果您通过“1”作为日期,您的编程将导致信用卡在该月的第一天到期。这不是标准做法,即让卡在每月的最后一天到期。可以使用 PHP date('t')找到该月的最后一天。

也许您可以看到这篇文章(希望如此)。它教授了您在 PHP 中处理 DATETIME 值所需了解的大部分内容。

http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/PHP/A_201-Handling-date-and-time-in-PHP-and-MySQL.html

最好的问候,~雷

于 2012-12-16T14:47:17.033 回答