2007年10月15日月曜日

callback関数にクラスのメソッドを指定(PHP)

スズキです。

PHPの配列処理関数には、
引数にcallback関数を指定できるものがあります。
(array_filter, array_map, ...)

このcallback関数にクラスのメソッドを指定したい場合に
どうするか?についてです。

回答は配列を利用する。
です。

$result = array_map(array($instance, "method"), $array);

のように、第一引数にクラスのインスタンス、
第二引数にメソッド名を指定します。
http://itpro.nikkeibp.co.jp/article/COLUMN/20070827/280383/
※staticメソッドも可(上記参照)

PHPでのオブジェクト指向プログラミングは
Javaにはない面白さがあるね。

--
blog: http://suz-lab.blogspot.com/

0 コメント: