skillup

技術ブログ

PHP

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

投稿日:2017年5月16日 更新日:

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
CakePHP3のChronosの機能紹介

 

-PHP
-, ,

執筆者:


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

comment

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

関連記事

no image

phpenv+php-build 複数のPHPのversionを使い分け

使っているサーバーで別バージョンのphp(7.2.0)を使いたかったのでphpenv&php-buildをインストール。 Contents1 phpenvのインストール2 php instal …

no image

Laravelでのmiddlewareの実行順番

Laravelでのmiddlewareをいじって認証直後の処理を作りたいときなど。 例えばログイン後、ユーザーidに応じた共通処理などをかませたいときです。 この場合、当然ログインの後に処理を実行しな …

no image

cakePHPでのバッチスクリプト

cakeでバッチのプログラムを書く機会があったのでメモします。 まあ、バッチだったらcakeでなくてもいいのですが、やはりcakeのModelをいろいろと使えると便利ですので・・ まずファイルパスです …

no image

メモリー不足でのスワップ割り当て

先日、あるサーバーでcomposerをinstallしようとしたところ、 The following exception is caused by a lack of memory or swap, …

no image

eclipseでのPHPソースの扱い方

Contents1 既存ファイルからプロジェクト生成2 PHP5.4以降でコンパイルする3 ctpファイルのシンタックスハイライト 既存ファイルからプロジェクト生成 超小ネタですが、Eclipseです …

アーカイブ