index/src/Http/Headers/IfModifiedSinceHeader.php

31 lines
784 B
PHP

<?php
// IfModifiedSinceHeader.php
// Created: 2022-02-14
// Updated: 2022-02-14
namespace Index\Http\Headers;
use DateTimeInterface;
use Index\DateTime;
use Index\Http\HttpHeader;
class IfModifiedSinceHeader {
private DateTime $dateTime;
public function __construct(DateTime $dateTime) {
$this->dateTime = $dateTime;
}
public function getDateTime(): DateTime {
return $this->dateTime;
}
public function isLessThanOrEqual(DateTimeInterface $dateTime): bool {
return $this->dateTime->isLessThanOrEqual($dateTime);
}
public static function parse(HttpHeader $header): IfModifiedSinceHeader {
return new IfModifiedSinceHeader(DateTime::createFromFormat(\DateTimeInterface::RFC7231, $header->getFirstLine()));
}
}