日本語表記の日付(年月日)のフォーマットはUnixタイムスタンプを取得したり別のフォーマットに変換する際にエラーになったり都合が悪いのでハイフン区切りのフォーマットに変換します。
日本語表記の日付をハイフン区切りに変換する
// 日本語表記の日付(年月日)
$event_date = "2020年7月18日";
// str_replace() で置換
$event_date = str_replace('日', '', $event_date); // "日"を空文字に置換する
$event_date = str_replace('年', '-', $event_date); // "年"を"-"に置換する
$event_date = str_replace('月', '-', $event_date); // "月"を"-"に置換する
var_dump($event_date);
string(9) "2020-7-18"
Unixタイムスタンプを取得する
// Unixタイムスタンプ
$timestamp = strtotime($event_date);
var_dump($timestamp);
int(1595030400)
DateTimeクラスでフォーマット変換
// DateTimeクラスでフォーマット変換
$DateTimeObj = new DateTime($event_date);
var_dump($DateTimeObj->format('Y年m月d日'));
string(17) "2020年07月18日"
コメント