繁体   English   中英

PHP:日期函数获取当前日期的月份

[英]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

http://php.net/date

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));

有关更多信息,请查看datestrtotime

编辑:

要与 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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM