Skip to content

Instantly share code, notes, and snippets.

@faparicior
Last active March 21, 2024 18:42
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save faparicior/a7ec4da6e549e79f4c4e4081f8747b62 to your computer and use it in GitHub Desktop.
Save faparicior/a7ec4da6e549e79f4c4e4081f8747b62 to your computer and use it in GitHub Desktop.
workshop-value-object-or-not-quiz-php-1
final class Money
{
public function __construct(private string $amount, private string $currency)
{
if (!is_numeric($amount)) {
throw new InvalidAmountException::notNumeric($amount);
}
$this->amount = $amount;
$this->currency = $currency;
}
public function amount(): string
{
return $this->amount;
}
public function currency(): string
{
return $this->currency;
}
public function equals(Money $other): bool
{
return $this->amount === $other->amount() &&
$this->currency === $other->currency();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment