PhoneResponseData.php 883 B

1234567891011121314151617181920212223242526272829303132
  1. <?php
  2. namespace App\Data\Pagarme\Response\CustomerResponseData\CustomerPhonesResponseData;
  3. use App\Data\Pagarme\PagarmeResponseData;
  4. final readonly class PhoneResponseData extends PagarmeResponseData
  5. {
  6. public function __construct(
  7. public ?string $countryCode,
  8. public ?string $areaCode,
  9. public ?string $number,
  10. ) {}
  11. public static function fromArray(array $payload): static
  12. {
  13. return new self(
  14. countryCode: static::arrString($payload, 'country_code'),
  15. areaCode: static::arrString($payload, 'area_code'),
  16. number: static::arrString($payload, 'number'),
  17. );
  18. }
  19. public function toArray(): array
  20. {
  21. return [
  22. 'country_code' => $this->countryCode,
  23. 'area_code' => $this->areaCode,
  24. 'number' => $this->number,
  25. ];
  26. }
  27. }