twitterこの広告は、90日以上更新していないブログに表示しています。2009-04-02PHPのコールバックを使いやすくするPHPのコールバックは少し使い辛いので、それを和らげるようなスニペットを実験的に書いた。calleeという三つの関数について説明する。quote関数まず、quote関数はあるオブジェクトのメソッドのコールバックを取り出すために使う。quote関数はQuotationクラスのコンストラクタのラッパなんだけど、こいつはカリー化も出来る。次にmethod関数だが、これはクラス内でメソッドのコールバックを取り出すのに使う。}}method関数の内部ではバックトレースを利用してオブジェクトを指定しなくとも良いようになっている。staticメソッド内で呼び出した場合は、クラスメソッドのコールバックが取り出される。このmethod関数もquoteと同様にカリー化できる。最後にcallee関数は自分自身のコールバックを取り出すのに使われる。method関数と同じくこれも内部でバックトレースを使っていて、例えばfoo関数の中で呼び出すとfoo関数のコールバックが得られ、barメソッドの中で呼び出すと同様にbarメソッドのコールバックが得られる。このcallee関数もカリー化ができ、例えばPHPで無限リストを実装したい場合は以下のように書ける。*/最後にcallback.phpgistにもコード置いてるんで暇な方はいじってみてください。»はてなブログをはじめよう!anatooさんは、はてなブログを使っています。ブログを報告する引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。