1

假设我想创建一个网站来检查我的生日是否已过,我可以轻松做到

    <?php
if( strtotime("2012-10-21") < time() ){
    echo "Birthday has passed";
    } else {
        echo "Birthday hasn't passed";
    } 
?>

但这只会计算一年,而不是未来的每一年。有人知道怎么做吗?

4

3 回答 3

2
<?php
    if (strtotime("21 October")<time()) {
        echo "Birthday has passed";
    } else {
        echo "Birthday hasn't passed";
    } 
?>

刚刚过了10 月 21 日strtotime()自动返回当年的 UNIX 时间戳。

于 2012-08-14T01:35:49.007 回答
0

使用mktime,只需将年份参数留空即可使用当前年份。

if (mktime(1, 1, 1, 10, 21) < time()) {
    ...
}

http://php.net/manual/en/function.mktime.php

于 2012-08-14T01:36:03.683 回答
-1

PHP 手册:mktime

if(mktime(23, 59, 59, $birthdayDate, $birthdayMonth) < time())
{
    //Birthday has passed
}

编辑:我使用了 23、59、59,这样它就不会说生日已经过去了,而它仍然是生日

于 2012-08-14T01:37:05.547 回答