1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
--TEST--
Abstract Trait Methods should behave like common abstract methods and
implementstion may be provided by other traits. Sorting order shouldn't influence result.
--FILE--
<?php
error_reporting(E_ALL);
trait THello {
public abstract function hello();
}
trait THelloImpl {
public function hello() {
echo 'Hello';
}
}
class TraitsTest1 {
use THello;
use THelloImpl;
}
$test = new TraitsTest1();
$test->hello();
class TraitsTest2 {
use THelloImpl;
use THello;
}
$test = new TraitsTest2();
$test->hello();
?>
--EXPECTF--
HelloHello
|