<?php trait X { public function foo() { echo "X::foo()\n"; } } class Y { use X { foo as old_foo; } public function foobar() { $this->old_foo(); // apparently this works too, ugly PHP $this->foo(); } } $o = new Y(); $o->foobar();