Re: 日付表示時の書式について

2015年9月8日 at 17:42

なるほど・・・

public function getCollectionDatePublic()
{
return $this->vObj->cvDatePublic;
}

public function getCollectionDatePublicObject()
{
return Core::make('date')->toDateTime($this->getCollectionDatePublic());
}


(concrete5にformatメソッドが在る訳ではなく)
getCollectionDatePublicObject()は、DateTime型のオブジェクトを戻り値とするので、
PHPののformatメソッドがそのまま使えているという事ですね。

一方で、getCollectionDatePublic()の返却値を(PHPの)date関数でフォーマットするのも、
結果が一緒という事ですね。

concrete5の汎用的なパッケージにしない限り、上記はどちらも一緒で、
パッケージにするなら、書式を指定するなら、getCollectionDatePublicObject()->format()
の方がよりベターな感じと考えればよろしいでしょうか?

実は、この辺の感覚もまだ相当不足していて、多言語(多文化?)を考慮した設計になっているconcrete5の場合、プログラム内にコーディングするべきではなく、Dateヘルパーを使った方が良いのですよね?

どういった時にconcrete5のヘルパーを使うのか
が判断できるように成りたいですね・・・

Re: 日付表示時の書式について

2015年9月8日 at 17:55
多言語対応で日付フォーマットを任意に設定したいのであれば、concrete5 のコアコミッターでもあるmlocatiが作っているPunicでいろいろ対応可能です(concrete5に同梱されています)
http://punic.github.io/#Calendar-class

多言語サイトでなければ、DateTimeオブジェクトで十分かと思いますし、formatメソッドに渡すフォーマット書式に t() 関数を通せば言語ごとに変更も可能ですし、まあその辺りは自由にやればいいと思います
 

Re: Re: 日付表示時の書式について

2015年9月8日 at 18:22
有難うございます。

自分の場合、(残念ながら)多言語サイトへの対応は無いですね・・・

と、いう事で、自由にやってみます!

ただ、将来、Marketplaceに出すとかしたくなった時に、変な癖がついているのも嫌なので、
色々、感性を磨かせて頂きます!