勉強したことのメモ

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, 正規表現

  関連記事

PHPでExcelシートを出力する方法(PhpSpreadsheet)

PHPでエクセルシートを出力させたい。以前はPHPExcelを利用していたが現在 ...

PHPのfor文とforeach文

ループ処理の際、forとforeachのどっちでもいけそうな場合、 特にどっちを ...

Cannot re-assign auto-global variableのエラー

PHPバージョンアップに伴い「Fatal error: Cannot re-as ...

Shift_JISでカタカナのソを出力するとエラー

先に結論として5C問題とかいうみたいで仕様らしい。 ■参考サイト http:// ...

PHPのチェック系関数

たまたまis_objectという関数を見かけて、 is_numericとかiss ...

エラー管理

<? /*エラー管理*/ //画面上にエラー表示させるかどうか。0⇒非表示 ...

PHPでソーシャル(SNS)ログインする方法2018

久しぶりにソーシャル(SNS)ログインを実装する機会があった。以前に対応方法を書 ...

MySQLiで直近に挿入したオートインクリメントの値と次回挿入する値を取得する方法

phpとmysqliを使っている中で次回挿入するオートインクリメントの値と、前回 ...

var_export

PHPのソースでvar_exportという見慣れない関数があった。 Aファイルか ...

PHPでユニークな文字列の作成

PHPでユニークな文字列を作成したかった。MySQLとかのオートインクリメントの ...