xref: /PHP-8.2/Zend/tests/traits/language006.phpt (revision d679f022)
1--TEST--
2Express requirements of a trait by abstract methods.
3--FILE--
4<?php
5error_reporting(E_ALL);
6
7trait Hello {
8   public function sayHelloWorld() {
9     echo 'Hello'.$this->getWorld();
10   }
11   abstract public function getWorld();
12 }
13
14class MyHelloWorld {
15   private $world;
16   use Hello;
17   public function getWorld() {
18     return $this->world;
19   }
20   public function setWorld($val) {
21     $this->world = $val;
22   }
23}
24
25$o = new MyHelloWorld();
26$o->setWorld(' World!');
27$o->sayHelloWorld();
28
29?>
30--EXPECT--
31Hello World!
32