FileMaster
Search
Toggle Dark Mode
Home
/
.
/
wp-content
/
plugins
/
ameliabooking
/
src
/
Domain
/
ValueObjects
/
Number
/
Float
Edit File: Price.php
<?php namespace AmeliaBooking\Domain\ValueObjects\Number\Float; use AmeliaBooking\Domain\Common\Exceptions\InvalidArgumentException; /** * Class Price * * @package AmeliaBooking\Domain\ValueObjects\Number\Float */ final class Price { /** * @var string */ private $price; /** * Price constructor. * * @param string $price * * @throws InvalidArgumentException */ public function __construct($price) { if ($price === null) { throw new InvalidArgumentException('Price can\'t be empty'); } if ( filter_var($price, FILTER_VALIDATE_FLOAT) === false && filter_var(str_replace(',', '.', (string)$price), FILTER_VALIDATE_FLOAT) === false ) { throw new InvalidArgumentException("Price \"{$price}\" must be float"); } if ($price < 0) { throw new InvalidArgumentException('Price must be larger then or equal to 0'); } $this->price = (float)$price; } /** * Return the price from the value object * * @return float */ public function getValue() { return $this->price; } }
Save
Back