Calender用のエントリです。5.4より後のPHP(5.5かな?)で利用可能になると思われるAccessorの仕様について紹介します。Accessorのおさらいから。追記:この機能は投票で棄却されてしまいました。賛否両論が拮抗していたのですが、実装されなくて残念です。}}などと書いてプライベートプロパティなどにアクセスするのがAccessorです。アクセサの良い部分はアクセスを制限できることです。この例の$this->varはリードオンリープロパティと同じ効果があります。クラス、プロパティが沢山ある場合にこんな風に書くのは面倒ですし、機械的な作業の繰り返しになります。5.4からはTraitsが使えるようになるため、繰り返し書かなくてもよくなります。".$line->getTotal();?>こんな感じです。これでも十分便利なのですが、Rubyにはリードオンリープロパティがあったり、C#には汎用的なアクセサの構文があります。5.5以降まだ構文が検討されている段階なので最終的にどうなるか分かりませんが、C#に近い感じのアクセサが実装される予定です。none;">}</span>プロパティ名の後にブロックが定義できるようになり、get/setの処理が定義できるようになります。単純なリードオンリープロパティに比べて、時間を秒に変換したり、価格を税率に合わせて税込価格にしたり、といった処理ができるのでとても便利です。書き込み時にも同様に処理が記述できます。get/setの処理がプロパティに近い場所で定義されるのでコードも読みやすくなります。以下はそのパッチです。5.4とそれ以降のPHPでアクセサがどのように変わるのか紹介しました。今すぐできる、Webサイトへの2要素認証導入PHPのOpenSSL関数を利用して暗号化する例そもそもエスケープとは何なのか?知らないと勘違いする「合成の誤謬」の罠2要素認証のTOTPとHOTP、どちらがより安全か?紹介エレクトロニック・サービス・イニシアチブのWebシステムのコンサルタントのブログです。PHPの開発、PHP4.x/5.xレガシーPHPセキュリティパッチサービスなどを行っています。ブログのサブタイトルを「書かない日記」としているのは、ブログを始めた時にあまり書かないつもりで始めたのでこのサブタイトルになっています。yohgaki@ohgaki.net私が記述したブログ中のコードは記載が無い場合はMITライセンスです。その他のコードは参考リンクなどのライセンス情報を参照ください。