runkit 関数
PHP Manual

runkit_method_add

(PECL runkit >= 0.7.0)

runkit_method_add指定したクラスに、新しいメソッドを動的に追加する

説明

bool runkit_method_add ( string $classname , string $methodname , string $args , string $code [, int $flags = RUNKIT_ACC_PUBLIC ] )

パラメータ

classname

メソッドを追加するクラスの名前。

methodname

追加するメソッドの名前。

args

カンマで区切った、新しいメソッドの引数。

code

methodname がコールされた際に 評価されるコード。

flags

作成するメソッドの型。 RUNKIT_ACC_PUBLICRUNKIT_ACC_PROTECTED あるいは RUNKIT_ACC_PRIVATE のいずれか。 1.0.1 以降では、ビット OR で RUNKIT_ACC_STATIC を組み合わせることも可能。

注意:

このパラメータは PHP 5 以降でのみ使用されます。なぜなら、それ以前の バージョンでは全てのメソッドが public だからです。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

例1 runkit_method_add() の例

<?php
class Example {
    function 
foo() {
        echo 
"foo!\n";
    }
}

// Example のオブジェクトを作成
$e = new Example();

// 新しい public メソッドの追加
runkit_method_add(
    
'Example',
    
'add',
    
'$num1, $num2',
    
'return $num1 + $num2;',
    
RUNKIT_ACC_PUBLIC
);

// 12 + 4 を計算する
echo $e->add(124);
?>

上の例の出力は以下となります。

16

参考


runkit 関数
PHP Manual