Код: Выделить всё
interface RequestDecoderInterface
{
public function decode(BaseRequest $request): AbstractParams;
}
class RegisterRequestDecoder implements RequestDecoderInterface
{
public function decode(RegisterRequest $request): RegisterParams
{
return new RegisterParams(
$request->email,
$request->firstName,
$request->lastName,
$request->password,
$request->secondName,
$request->address,
$request->phoneNumber,
$request->gender,
new \DateTime($request->birthday),
$request->avatar
);
}
}
class RegisterRequest extends BaseRequest
{
...
Подробнее здесь: https://stackoverflow.com/questions/791 ... ace-method
Мобильная версия