現在の日付変数の月を把握できるようにしたい。私は元vb.netで、それを行う方法はdate.Month
だけです。 PHPでこれを行うにはどうすればよいですか?
おかげで、
ジョーニー
date_format($date, "m"); //01, 02..12
を使用しました
$monthnumber = 01
が1
になるので、これがintとどのように比較するかという質問です。
http://php.net/date を参照してください
date('M')
またはdate('n')
またはdate('m')
...
更新
m先行ゼロ付きの月の数値表現01から12
n先行ゼロなしの月の数値表現1から12
F月のアルファベット表記1月から12月まで
「データ変数」はどのように見えますか?このような場合:
$mydate = "2010-05-12 13:57:01";
簡単にできます:
$month = date("m",strtotime($mydate));
詳細については、 date および strtotime をご覧ください。
編集:
Intと比較するには、date_format($date,"n");
を実行するだけで、先行ゼロなしで月が得られます。
または、次のいずれかを試してください。
if((int)$month == 1)...
if(abs($month) == 1)...
または、ltrim、round、floorを使用した奇妙なものですが、date_format()に「n」を指定するのが最適です。
$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
?>