[英]PHP: date function to get month of the current date
我希望能够找出当前日期变量的月份。 我是前 vb.net 并且这样做的方法只有date.Month
。 我如何在 PHP 中做到这一点?
谢谢,
琼斯
我使用了date_format($date, "m"); //01, 02..12
date_format($date, "m"); //01, 02..12
这就是我想要的,现在的问题是我如何将它与 int 进行比较,因为$monthnumber = 01
刚刚变为1
date('m')
或date('n')
或date('F')
...
更新
m月份的数字表示,前导零为01 到 12
n月份的数字表示,没有前导零1 到 12
F一月到十二月的字母表示
....查看文档链接以获取更多选项。
你的“数据变量”是什么样的? 如果是这样:
$mydate = "2010-05-12 13:57:01";
你可以简单地做:
$month = date("m",strtotime($mydate));
编辑:
要与 int 进行比较,只需执行date_format($date,"n");
这将为您提供没有前导零的月份。
或者,尝试以下方法之一:
if((int)$month == 1)...
if(abs($month) == 1)...
或者使用 ltrim、round、floor 进行一些奇怪的操作……但是带有“n”的 date_format() 会是最好的。
$unixtime = strtotime($test);
echo date('m', $unixtime); //month
echo date('d', $unixtime);
echo date('y', $unixtime );
由于 date_format 使用与日期相同的格式( http://www.php.net/manual/en/function.date.php )“月份的数字表示,没有前导零”是小写 n .. 所以
echo date('n'); // "9"
由于它没有指定是系统的当前日期还是变量中保存的日期,我将用一个例子来回答后者。
<?php
$dateAsString = "Wed, 11 Apr 2018 19:00:00 -0500";
// This converts it to a unix timestamp so that the date() function can work with it.
$dateAsUnixTimestamp = strtotime($dateAsString);
// Output it month is various formats according to http://php.net/date
echo date('M',$dateAsUnixTimestamp);
// Will output Apr
echo date('n',$dateAsUnixTimestamp);
// Will output 4
echo date('m',$dateAsUnixTimestamp);
// Will output 04
?>
要与 int 进行比较,请执行以下操作:
<?php
$date = date("m");
$dateToCompareTo = 05;
if (strval($date) == strval($dateToCompareTo)) {
echo "They are the same";
}
?>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.