PHPコールバック関数の使い方と注意点、コールバック関数
PHP では、call_user_function() や usort() などの一部の関数は、ユーザー定義関数をパラメーターとして受け入れます。 Callback 関数は単純な関数であるだけでなく、静的クラスのメソッドなどのオブジェクトのメソッドであることもあります。
PHP 関数は関数名の文字列として渡されます。 array()、echo()、empty()、eval()、exit()、isset()、list()、print()、および unset() を除く、任意の組み込み関数またはユーザー定義関数を渡すことができます。
オブジェクトのメソッドは配列の形式で渡されます。配列の添字 0 はオブジェクト名を示し、添字 1 はメソッド名を示します。
オブジェクトとしてインスタンス化されていない静的クラスの場合、そのメソッドを渡すには、配列 0 の添え字で指定されたオブジェクト名をクラスの名前に置き換えます。
コールバック関数の例:
コードをコピーします コードは次のとおりです:
// コールバック関数の例
関数 my_callback_function() {
「Hello World!」をエコーします;
}
// コールバックメソッドの例
クラス MyClass {
関数 myCallbackMethod() {
「Hello World!」をエコーします;
}
}
// タイプ 1: 単純なコールバック
call_user_func('my_callback_function');
// タイプ 2: 静的クラスメソッド呼び出し
call_user_func(array('MyClass', 'myCallbackMethod'));
// タイプ 3: オブジェクトメソッド呼び出し
$obj = 新しい MyClass();
call_user_func(array($obj, 'myCallbackMethod'));
?>
http://www.phpe.net/manual/ language.pseudo-types.php
http://cn.php.net/manual/en/ language.pseudo-types.php
http://www.bkjia.com/PHPjc/946743.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/946743.html技術記事 PHP コールバック関数の使用方法と注意事項 call_user_function() や usort() など、PHP の一部のコールバック関数は、ユーザー定義関数をパラメータとして受け入れます。キャ...