そのまんま!
classkit_method_add
(PECL)
classkit_method_add -- 指定したクラスに、新しいメソッドを動的に追加する
説明
bool
classkit_method_add ( string classname, string methodname, string args, string code [, int flags] )
警告 |
この関数は、
実験的 なものです。この関数の動作・
名前・その他ドキュメントに書かれている事項は、予告なく、将来的な PHP
のリリースにおいて変更される可能性があります。
この関数は自己責任で使用してください。 |
パラメータ
classname
メソッドを追加するクラスの名前。
methodname
追加するメソッドの名前。
args
カンマで区切った、新しいメソッドの引数。
code
methodname
がコールされた際に
評価されるコード。
flags
作成するメソッドの型。
CLASSKIT_ACC_PUBLIC、
CLASSKIT_ACC_PROTECTED あるいは
CLASSKIT_ACC_PRIVATE のいずれか。
注意:
このパラメータは PHP 5 以降でのみ使用されます。なぜなら、それ以前の
バージョンでは全てのメソッドが public だからです。
返り値
成功した場合に TRUE を、失敗した場合に FALSE を返します。
例
例 1. classkit_method_add() の例
<?php class Example { function foo() { echo "foo!\n"; } }
// Example のオブジェクトを作成 $e = new Example();
// 新しい public メソッドの追加 classkit_method_add( 'Example', 'add', '$num1, $num2', 'return $num1 + $num2;', CLASSKIT_ACC_PUBLIC );
// 12 + 4 を計算する echo $e->add(12, 4); ?>
|
上の例の出力は以下となります。 |