我希望能够找出当前日期变量的月份.我是前vb.net,那里的方法就是这样date.Month.我如何在PHP中执行此操作?
谢谢,
Jonesy
我用了 date_format($date, "m"); //01, 02..12
这就是我想要的,现在的问题是如何将它与int进行比较,因为$monthnumber = 01它变成了1
fab*_*rik 85
date('M')或date('n')或date('m')...
更新
m 一个月的数字表示,前导零到 01
n 一个月的数字表示,不带前导1到12的零
F 1月至12月 的一个月的字母表示
oez*_*ezi 72
你的"数据变量"是什么样的?如果它是这样的:
$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 );
由于未指定您是指系统的当前日期还是变量中保存的日期,所以我将用一个示例来回答后者。
<?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
?>
由于date_format使用与date相同的格式(http://www.php.net/manual/en/function.date.php),"一个月的数字表示,没有前导零"是小写的n ..所以
echo date('n'); // "9"
| 归档时间: | 
 | 
| 查看次数: | 262123 次 | 
| 最近记录: |