勉強したことのメモ

webプログラマが勉強したことのメモ。

PHPでdatetime型を分割する

      2014/05/17

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
http://php.net/manual/ja/function.preg-split.php
正規表現で文字列を分割する

-と:と半角スペースで区切ったものをlistで
格納していったら一発だった。

 - PHP, 正規表現

  関連記事

正規表現の特殊文字等

http://taitan916.hateblo.jp/entry/2013/0 ...

正規表現のフラグ

i 大文字・小文字を区別しない g 2番目、3番目……と全部検索する 正規表現は ...

正規表現でor(または)を検索

|がorという意味になる。 また、普通のカッコ()内に文字を入れると まとめて検 ...

他サーバーにある画像をPHPで取得して保存する方法

他サーバーにある画像をURLで指定して、PHPで取得して保存する方法のメモ。 フ ...

PHPでベーシック認証をかける方法

PHPでBasic認証をかけているソースを拝見する機会があり、衝撃だったのでメモ ...

正規表現で行の先頭と最後

^(キャレット) 行の先頭 $ 行の最後 を検索する場合に使用する。 ■例 va ...

PHPで一括出力ではなく、ひとつずつ順次に出力する方法

PHPで重たい処理とかをしている際に、途中報告みたいな形で順次出力させる方法のメ ...

登録画像orノーイメージ画像の振り分け表示

<? /* 画像が登録されていれば当該画像を読み出し、 登録されていない場 ...

$_SERVER['PHP_SELF']に脆弱性あり

formのaction属性とかページングのリンクとかで、 <form ac ...

ユーザーエージェントなどユーザー情報を取得する方法

上からUA、IP、ホスト名を取得。 $ua = $_SERVER['HTTP_U ...