PHP -MKTIMEまたはSTRTOTIME?
質問
2010-02を2010年2月に変換しようとしています。しかし、1969年12月になり続けています
Mktime、Strtotime、および2つの組み合わせを使用してみましたが、それでもできませんでした...
これは私が最近試したことです...
$path_title = date('F, Y', mktime(0,0,0,2,0,2010));
解決
これはそれを行う方法です:
$dateString = '2010-02';
list($year, $month) = explode('-', $dateString);
$timeStamp = mktime(0, 0, 0, $month, 1, $year);
echo date('F, Y', $timestamp);
別の言い方は次のとおりです。
$dateString = '2010-02';
$timestamp = strtotime($dateString . '-01');
echo date('F, Y', $timestamp);
strtotime
「2010-02」のようなあいまいな日付を処理することはできませんが、完全な日付を作ると機能するはずです。
そうでなければ、あなたは次のようなものを調べたいかもしれません DateTime::createFromFormat
.
他のヒント
これを試して:
$str = '2010-02';
echo date('F, Y',mktime(0,0,0,substr($str,-2),1,substr($str,0,4)));
有効な値を使用していることを確認する必要があります mktime()
. 。あなたが質問に編集したあなたの例では、あなたは持っています 0
事実上最初の日である日である日として、それはあなたを前月に入れます。
所属していません StackOverflow