Php static binding static: for static binding in static binding, static: is not explained here. I want to use an instance to prove it. This example is from the official documentation:
For example one:
class A{ private function foo(){ echo "this is a test function"."
"; } public function test(){ $this->foo(); static::foo(); }}$A=new A();$A->test();
Output result:
This is a test function
This is a test function
For example Two:
class A{ private function foo(){ echo "this is a test function"."
"; } public function test(){ $this->foo(); static::foo(); }}class B extends A{}$B=new B();$B->test();
Output result:
This is a test function
This is a test function
For example three:
class A{ private function foo(){ echo "this is a test function"."
"; } public function test(){ $this->foo(); static::foo(); }}class B extends A{}class C extends A{ private function foo(){ } } $C=new C();$C->test();
Output result:
This is a test function
(! ) Fatal error: Call to private method C: foo () from context 'A' in D: \ www \ testXdebug \ index. php on line 21
Call Stack
Time Memory Function Location
1 0.0156 135536 {main }()... \ Index. php: 0
2 0.0156 135936 A-> test ()... \ Index. php: 35
Copyright Disclaimer: This article is an original article by the blogger and cannot be reproduced without the permission of the blogger.