0

如何在 php 中查看今天的天气是一年中的第一天。

编辑: echo date('Ymd', strToTime('1/1 this year'));

这段代码给了我结果。这是有效的还是有比这更好的方法。

4

9 回答 9

6

您可以通过传递格式字符串 'z' 执行内置date()函数来获取一年中的哪一天。这将在第一天返回'0',在第二天返回'1',......直到(闰年)的最后一天返回'365'。

if ( date('z') === '0' ) {
    //Today is the first day of the year.
}
于 2012-08-17T07:27:49.453 回答
2
if (date('z') === 0) {
echo 'we have 1.1.'
}

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

于 2012-08-17T07:28:25.917 回答
0

这应该可以解决您的问题等等!

<?php
$theDate = date("md"); 
if ($theDate=="0101") echo "It's A New Year!";
?>

Date() 函数格式化字符:

  • d - 月份日期的数字表示 (0 - 31)
  • m - 一年中月份的数字表示 (1 - 12)
  • y - 一年的数字表示(两位数)(99、00、01、02)
  • H - 24 小时格式当前小时 (00 - 23)
  • i - 分钟 (00 - 59)
  • s - 秒 (00 - 59)
于 2012-08-17T07:25:26.753 回答
0
if(date('j') == '1' && date('n') == 1){
    // if first day of year
}

这将很容易做到,而无需您通常担心的任何复杂的日期内容。

于 2012-08-17T07:27:04.847 回答
0

欲了解更多信息,请参阅http://php.net/date

<?php
 if(date('dm',mktime())=="0101")
    echo "fist day of year";
 else
    echo "not the first day";
?>
于 2012-08-17T07:29:49.937 回答
0

一年的第一天永远不会与 1/1/yyyy 不同您可以使用 strcmp 或

$now=new DateTime();

然后使用 $now 中的 getDay GetMonth 进行评估

于 2012-08-17T07:31:16.473 回答
0

如果您对一年中第一天的名称感兴趣

echo date('l', strtotime('2012-01-01'));

或者

echo date('l', strtotime("first day of January 2012"));

Output:// Sunday

OR

just use -

echo (date('z') === 0) ? 'First day' : 'Not first day';

//z     The day of the year (starting from 0)   0 through 365

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

http://www.php.net/manual/en/datetime.formats.relative.php

于 2012-08-17T07:43:20.293 回答
0

您可以执行以下操作:

echo date('Y-m-d', strtotime("first day of january " . date('Y')));
于 2012-08-17T08:04:21.747 回答
0

date函数有一个z格式字符,可用于:

$day_of_year = date('z');
// $day_of_year is 259 for the day I write this
于 2015-09-17T09:45:50.790 回答