PHPでdatetime型のデータを年月日時分秒に分割する方法
2024/01/18
datetime型を年月日時分秒でそれぞれに分割させたい時に今まではいちいちexplodeで区切った上で一個ずつ変数に入れていっていた。もう少しスマートにできないかと調べたところ良さそうな方法があったのでメモ。
今までのやり方
$datetime = '2013-03-21 15:05:59'; $datetime1 = explode(' ', $datetime); $date = explode('-', $datetime1[0]); $year = $date[0]; $month = $date[1]; $day = $date[2];
新しいやり方
list($year, $month, $day, $hour, $minute, $second) = preg_split('/[-: ]/', $datetime); var_dump($year, $month, $day, $hour, $minute, $second); /* string(4) "2013" string(2) "03" string(2) "21" string(2) "15" string(2) "05" string(2) "59" */
preg_split関数を用いて正規表現で文字列を分割し配列に入れると。-と:と半角スペースで区切ったものをlistで格納していったら一発だった。
関連記事
-
-
正規表現のメタ文字大カッコ[]
[] 大カッコ内に入っている文字のいずれかが入っているか検索 [abcde] だ ...
-
-
正規表現について
正規表現について勉強したのでメモ。 そもそも正規表現とは? という状態だったので ...
-
-
正規表現の繰り返し
{}(波カッコ)で繰り返しの回数を指定できる。 a{5} aを5回繰り返し。 b ...
-
-
正規表現で行の先頭と最後
^(キャレット) 行の先頭 $ 行の最後 を検索する場合に使用する。 ■例 va ...
-
-
javascriptとPHPで正規表現を使う場合
とりあえず使いそうなのは検索と置換。 ■javascript var str = ...