文字列を人間が読める日付形式にフォーマットするのに苦労しています。
私は持っている:
07122012
そして取得する必要があります
2012 年 12 月 7 日
試した:
date("j M Y", strtotime($str));
文字列を人間が読める日付形式にフォーマットするのに苦労しています。
私は持っている:
07122012
そして取得する必要があります
2012 年 12 月 7 日
試した:
date("j M Y", strtotime($str));
DateTime::createFromFormat (PHP >= 5.3.0 で利用可能) を次のように使用できます。
$date = DateTime::createFromFormat('jmY', '07122012');
echo $date->format('d M Y') . "\n";
試す:
$str = "07122012";
$stryear = substr($str,-4);
$strmonth = substr($str,2,2);
$strday = substr($str,0,2);
echo date("j M Y", strtotime($stryear.'-'.$strmonth.'-'.$strday));
それはトリックを行いますが、最善の方法はphpドキュメントを読むことです(おそらく組み込み機能があります)
この文字列を直接解析できないため、最もエレガントな方法は次のとおりだと思います。
$date = "07122012";
// parse the dte fist correctly
$parsed_date = date_parse_from_format('dmY', $date);
// Make time, print date
echo date("j M Y", mktime(0, 0, 0, $parsed_date['month'], $parsed_date['day'], $parsed_date['year']));