<?php
declare(strict_types=1);
error_reporting(E_ALL);
class ClassUsedForTyping
{
public int $x = 1234;
}
class ClassWithSetMagic {
public function __construct() {
printf("Constructor for ClassWithSetMagic\n");
}
public function __set($name, $value) {
printf("Setting %s\n", $name);
}
public function __get($name) {
printf("Getting %s\n", $name);
return null;
}
}
class ClassInheritingFromClassWithSetMagic extends ClassWithSetMagic {
public ClassUsedForTyping $example;
public function __construct() {
parent::__construct();
$this->example = new ClassUsedForTyping();
}
}
$inst = new ClassInheritingFromClassWithSetMagic();
print_r($inst->example);
Parse error: syntax error, unexpected 'int' (T_STRING), expecting function (T_FUNCTION) or const (T_CONST) in /in/r9DBU on line 9
Process exited with code 255.