1--TEST--
2Explicit set property hook $value parameter
3--FILE--
4<?php
5
6class Test {
7    public string $prop {
8        set(string|array $prop) {
9            $this->prop = is_array($prop) ? join(', ', $prop) : $prop;
10        }
11    }
12}
13
14$test = new Test();
15var_dump($test->prop = 'prop');
16var_dump($test->prop = ['prop1', 'prop2']);
17var_dump($test->prop);
18
19?>
20--EXPECT--
21string(4) "prop"
22array(2) {
23  [0]=>
24  string(5) "prop1"
25  [1]=>
26  string(5) "prop2"
27}
28string(12) "prop1, prop2"
29