PHP – preg_replace_callback

Pocket

preg_replace_callback() でクラス内の関数をコールバック関数とする場合

class foo {
  function mogemoge($matches){
    ・・・
  }
  function hogehoge(){
    ・・・
    preg_replace_callback( $pattern, array($this,"mogemoge"), $str ) ;
  }
}

array($this,”mogemoge”)のように配列で渡す。はまったのでメモ。

2件のコメント

  1. はじめまして。

    試してみましたが、『array()』を囲むシングルクオートは
    必要ないのではないでしょうか?
    CakePHP上で試したのですが、

    preg_replace_callback( $pattern, array($this,”mogemoge”), $str );

    こう記述しなければエラーになってしまいました。

  2. ご指摘ありがとうございます。早速修正いたします!

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください