Autor wpisu: bastard13, dodany: 19.09.2011 15:18, tagi: php
pre { border: #aaa solid 1px; padding: 10px; margin: 5px 5px 15px 5px; font-family: "Courier New",Courier,monospace; background-color: #f9f9f9 !important;}pre span.key_word { color: #006699 !important; font-weight: bold;}pre span.comment { color: #008200 !important;}pre span.variable{ color: #AA7700 !important;}pre span.string{ color: blue !important;}pre span.functions{ color: #FF1493 !important;}p { margin: 0px;}W PHPie istnieją trzy przydatne słowa kluczowe będące referencją do metod oraz atrybutów klas. Wykorzystuje się je przy dziedziczeniu i są to: self, parent, static.Parent odnosi się do metod/atrybutów klasy bazowej:
<?phpclass A { public function foo() { return 'class A, method foo()'; }}class B extends A{ public function foo() { return 'class B, method foo() and parent: ' . parent::foo(); }}$object = new B;echo $object->foo();Powyższy kod dana nam wynik:
class B, method foo() and parent: class A, method foo()Self odnosi się do metod/atrybutów klasy, które są zdefiniowane w bieżącym kodzie, czyli jeżeli mam klasę A w niej metody foo() i boo(), gdzie chcę, żeby metoda foo() zaimplementowana w klasie A, zawsze odnosiła się do metody boo() z klasy A, nawet jeżeli w klasach potomnych zostanie nadpisana, to właśnie wtedy stosujemy słowo kluczowe self:
<?phpclass A { public function foo() { return self::boo(); } public function boo() {