最後は__set()と__get()になります。比較的シンプルな機能ですが、
それだけに割と見る機会が多いように思われますので、しっかりとやっていきましょう。
__get()及び__set()は、__call()に似ております。
端的には、この2つのマジックメソッドは「アクセス不能なプロパティにアクセスしようとした時に動きます」。
細かく書きますと、__set()はアクセス不能プロパティへ「データを書き込む」タイミングで、__get()は
アクセス不能プロパティから「データを読み込む」タイミングで、callされます。
この辺りでよいサンプルになるのが、Smartyですね。
Smartyは、インスタンスの生成直後(でなくてもいいのですが、大抵の場合、生成直後に行われます)、
最低限「template_dirの設定」と「compile_dirの設定」を行うのですが。
幾分古いサンプルコードですと、大抵、こんな風に書かれています。
$smarty = new Smarty();
$smarty->template_dir = ディレクトリ;
$smarty->compile_dir = ディレクトリ;
さて…幾分古い、Smartyの2.x系のコードを一部抜粋するとこんな感じなのですが。
class Smarty
{
/**#@+
この続きは以下をご覧ください
(リンク »)
お問い合わせにつきましては発表元企業までお願いいたします。