array_walk で コールバック関数に class内のメソッドを指定するには・・・
配列の全ての要素に関数を適用する array_walk はとても便利なのですが、クラス内のメソッドを指定できなくて少々はまりました。グーグルで調べてみると、同じ疑問を持った方はたくさんいるようで、参考になるページがたくさんありました。
array_walk の引数を配列とするのがポイントです。
class Test() { function Test(){ print_r($data); array_walk($data, array($this, "hoge")); print_r($data); return true; } function hoge(&$v,$k){ $v = "#".$v."#"; } }
こんな感じで書いてみました。