重松です。書きかけで送信してしまいました。大変失礼いたしました。 function say($n,$v){ $this->data($n)->say($v); } ですが、 function say($n,$v){ $this->data[$n]->say($v); } です。 コードの方は、そういう風になっています。 > is_object > で調べるのはいかがでしょう? はい、一度代入しないとうまくいかないついでというわけではありませんが、現状 is_object で調べています。 ここで調べられるのは、object である、というところまでであり、say() というメ ソッドが定義されているか、知ることはできない気がしています。