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 : TimeOfDay.php
<?php

/**
 * @copyright © TMS-Plugins. All rights reserved.
 * @licence   See LICENCE.md for license details.
 */

namespace AmeliaBooking\Domain\ValueObjects\DateTime;

use AmeliaBooking\Domain\Common\Exceptions\InvalidArgumentException;

/**
 * Class TimeOfDay
 *
 * @package AmeliaBooking\Domain\ValueObjects\DateTime
 */
final class TimeOfDay
{
    /** @var bool */
    private $value;

    /**
     * TimeOfDay constructor.
     *
     * @param $value
     *
     * @throws InvalidArgumentException
     */
    public function __construct($value)
    {
        $time   = strtotime($value);
        $hour   = (int)date('H', $time);
        $minute = (int)date('i', $time);
        $second = (int)date('s', $time);

        if ($hour < 0 || $hour > 24) {
            throw new InvalidArgumentException(sprintf('%s should be in range %d-%d', '$hour', 0, 24));
        }

        if ($minute < 0 || $minute > 59) {
            throw new InvalidArgumentException(sprintf('%s should be in range %d-%d', '$minute', 0, 59));
        }

        if ($second < 0 || $second > 59) {
            throw new InvalidArgumentException(sprintf('%s should be in range %d-%d', '$second', 0, 59));
        }

        $this->value = $value;
    }

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