Uname: Linux webm012.cluster130.gra.hosting.ovh.net 5.15.167-ovh-vps-grsec-zfs-classid #1 SMP Tue Sep 17 08:14:20 UTC 2024 x86_64
Software: Apache
PHP version: 8.0.30 [ PHP INFO ] PHP os: Linux
Server Ip: 145.239.37.162
Your Ip: 216.73.216.190
User: dreampi (1009562) | Group: users (100)
Safe Mode: OFF
Disable Function:
_dyuweyrj4,_dyuweyrj4r,dl

name : Email.php
<?php

namespace AmeliaBooking\Domain\ValueObjects\String;

use AmeliaBooking\Domain\Common\Exceptions\InvalidArgumentException;

/**
 * Class Email
 *
 * @package AmeliaBooking\Domain\ValueObjects\String
 */
final class Email
{
    public const MAX_LENGTH = 255;
    /**
     * @var string
     */
    private $email;

    /**
     * Email constructor.
     *
     * @param string $email
     *
     * @throws InvalidArgumentException
     */
    public function __construct($email)
    {
        if ($email !== null && !filter_var($email, FILTER_VALIDATE_EMAIL)) {
            throw new InvalidArgumentException("Email '$email' is not a valid email");
        }
        if ($email && strlen($email) > static::MAX_LENGTH) {
            throw new InvalidArgumentException("Email '$email' must be less than " . static::MAX_LENGTH . ' chars');
        }
        $this->email = $email;
    }

    /**
     * Return the email from the value object
     *
     * @return string
     */
    public function getValue()
    {
        return $this->email;
    }
}
© 2026 GrazzMean-Shell