3v4l.org

run code in 300+ PHP versions simultaneously
<?php class UserService { public const USERNAME_ALREADY_TAKEN = 'username_already_taken'; /** @return Result<User, Error[]> */ public function registerUser(UserRegistrationData $data): Result { return $this->userRepository->find($data->username).mapOrElse( fn() => User::register($data->username, $this->passwordEncoder->encode($data->password))->andThen(function (User $user) { $this->userRepository->save($user); return $user; ), fn() => err([ new Error(sprintf('Username "%s" is already taken.', $data->username), self::USERNAME_ALREADY_TAKEN) ])) ); } }
Output for 8.0.10
Parse error: Unclosed '{' on line 11 does not match ')' in /in/1OBHa on line 14
Process exited with code 255.

preferences:
160.52 ms | 999 KiB | 7 Q