PHP クラスの静的関数およびオブジェクトのメソッド コールバックの手順
前の章では、コールバック関数はグローバル関数 (どのオブジェクトまたはクラスにも定義されていない関数) を通じて宣言および適用されましたが、コールバックが発生した場合は静的クラス内のメソッド、またはオブジェクト内の通常のメソッドは異なります。 オブジェクト指向技術については本書の後章で詳しく紹介しますので、この章で紹介した応用方法については、その後の学習や応用で必要に応じて遡って復習することができます。コールバック メソッドがクラスの静的メソッドまたはオブジェクトのメンバー メソッドの場合はどうすればよいでしょうか?前章ではphp関数のコールバック関数のcall_user_func_array()関数を紹介しましたもう一度call_user_func_array()関数の応用を見てみましょう。最初のパラメータの関数名文字列を配列型パラメータに変更できます。
次に、別途クラスを宣言し、クラス内で静的メンバーメソッドを宣言します。システム関数を使用して、クラス内の静的メンバー メソッドとインスタンス オブジェクト メンバー メソッドを呼び出します。
コードは次のとおりです:
<?php //声明一个类demo,类中声明一个静态成员方法fun() class demo{ static function fun($str1,$str2){ echo "str1 = ".$str1; echo "<br>"; echo "str2 = ".$str2; } } //声明一个类test,类中声明一个静态成员方法fun() class test{ function fun($str1,$str2){ echo "str1 = ".$str1; echo "<br>"; echo "str2 = ".$str2; } } //使用系统函数call_user_func_array(),调用demo类中的静态成员方法fun() call_user_func_array( array("demo","fun"), array("php.cn", "php中文网")); echo "<br>------------------------<br>"; //使用系统函数call_user_func_array(),调用test类中的实例对象成员方法fun() call_user_func_array( array(new test(),"fun"), array("thinkphp","php框架")) ?>
callback() はすべてのコールバック関数を表します:
1 コールバック グローバル関数の形式は次のとおりです:
callback("函数名称字符串")
2コールバック クラスの静的メンバー メソッドの形式は次のとおりです:
callback(array("类名称字符串","类中静态方法名称字符串"))
3. コールバック オブジェクトのメンバー メソッドの形式は次のとおりです:
callback(array(对象引用,"对象中方法名称字符串"))
さて、php関数のコールバック関数部分が導入されました。
【関連チュートリアルの推奨事項】
1.「
php.cn Dugu Jiijian (4) - PHPビデオチュートリアル」2. PHPプログラミングの入門からチュートリアルまでの完全なセット。マスター
以上がPHP関数のコールバック関数 (3) 静的関数やオブジェクトのメソッドコールバックの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。