skillup

技術ブログ

PHP

CakePHP3 日付ライブラリ(Time)について

投稿日:

CakePHPには標準でいろいろなライブラリが入っていますが、日付ではCake\I18n\Timeというライブラリが入っています。

内部では3.2より前のバージョンではCarbonだったようですが、それ以降のバージョンではChronosというライブラリが入っています。基本的にDateTimeとこのChronosでできるメソッドは実装されているようです。

以下のよく使用する使い方や注意点などを書いておきます。

通常のインスタンス作成

 

任意のフォーマットからのパース

 

任意のフォーマットへの出力

 

年月日自分秒を指定してのインスタンス作成

 

任意の日付への変更

 

個別の値の取り出し

 

大小判定

 

区間判定

 

加算・減算

 

月末日

 

差分

 

注意点としてはTimeは変更があるたびに状態が変わってしまうので状態を変えたくないときはFrozenTimeというクラスをつかう必要があります。

状態を変えたくないときはFrozenTimeを使います。

参考リンク

https://book.cakephp.org/3.0/ja/core-libraries/time.html
https://book.cakephp.org/3.0/ja/chronos.html
http://qiita.com/ishizuki/items/96f268a46c09136ba4dc

 

-PHP
-, ,

執筆者:


  1. […] CakePHP3 日付ライブラリ(Time)について http://skill-up-engineering.com/?p=2758 […]

comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

cakePHPでの直SQL

今回はCakePHPにて直のSQLを書く方法を。 cakePHPにて大概の処理はもともと備わっているコマンドでなんとかなりますが、まれに直SQLを書いたほうがらくなこともあります。 書き方その1 [c …

no image

cake sql系+リレーション+ヘルパー

先月末に引き続いてcakeネタをもりっといきます。 といっても自分用の小ネタリンク集です。 Contents1 sql系の小ネタ1.1 findとread1.2 find(‘count&# …

no image

cakeでのトランザクション、コミット、ロールバック

cakePHP(2.X系)でのトランザクション、コミット、ロールバックについて。 cakePHPでトランザクションを書ける場合、Model内に [crayon-5a626187a97fa3624514 …

no image

nginx上でのcakePHP

cakePHP上をCentOS,nginx上で公開するときのメモなどを。 cakeのversionは2.5です。 /var/www/html/sampleapp直下にプログラムを配置するものとします。 …

no image

jenkinsでのPHPのCIに関して

PHPでのjenkinsに関して。 PHPでのjenkinsといっても基本Javaなどと変わらないと思います。 何らかのトリガーでjenkinsのjobをビルド(一連のタスク)させる ビルドの内容はソ …