<?php trait T { private function a() { return "T/a\n"; } public function callAFromT() { return $this->a(); } } class X { use T; private function a() { return "X/a\n"; } public function callAFromX() { return $this->a(); } } class Y extends X { private function a() { return "Y/a\n"; } public function callAFromY() { return $this->a(); } } $y = new Y; echo $y->callAFromY(); // outputs "Y/a" echo $y->callAFromX(); // outputs "X/a" echo $y->callAFromT(); // expected: "T/a"; outputs "X/a";
You have javascript disabled. You will not be able to edit any code.