<?php
class User
{
public string $username;
public function __construct(string $name)
{
$this->username = $name;
}
}
interface Factory
{
public static function make(string $name): object;
}
class UserFactory implements Factory
{
public static function make(string $name): User
{
return new User($name);
}
}
$uf = UserFactory::make("Tiffany");
echo $uf->username;
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
Tiffany
Parse error: syntax error, unexpected 'string' (T_STRING), expecting function (T_FUNCTION) or const (T_CONST) in /in/4nGnG on line 5
Process exited with code 255.