ホームページ >バックエンド開発 >PHPチュートリアル >PHP 静的バインディング static::
静的バインディングの static:: については、ここではあまり説明しません。この例は公式ドキュメントからのものです:
class A{ private function foo(){ echo "this is a test function"."<br>"; } public function test(){ $this->foo(); static::foo(); }}$A=new A();$A->test();
出力結果:
これはテスト関数です
これはテスト関数です
class A{ private function foo(){ echo "this is a test function"."<br>"; } public function test(){ $this->foo(); static::foo(); }}class B extends A{}$B=new B();$B->test();
出力結果:
これはテスト関数です
これはテスト関数です
class A{ private function foo(){ echo "this is a test function"."<br>"; } public function test(){ $this->foo(); static::foo(); }}class B extends A{}class C extends A{ private function foo(){ } } $C=new C();$C->test();
出力結果:
これはテスト関数
( ! ) 致命的なエラー: D:wwwtestXdebugindex.php の 21 行目でコンテキスト 'A' からプライベート メソッド C::foo() を呼び出します
呼び出しスタック
タイム メモリ関数の場所
1 0.0156 135536 {main}( ) …index. php:0
2 0.0156 135936 A->test( ) …index.php:35
著作権表示: この記事はブロガーによるオリジナル記事であり、ブロガーの許可なく複製することはできません。