for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Popy\Calendar\Calendar;
use DateTimeZone;
use DateTimeImmutable;
use RuntimeException;
use DateTimeInterface;
use Popy\Calendar\CalendarInterface;
use Popy\Calendar\ValueObject\DateRepresentationInterface;
/**
* Basic GregorianCalendar implementation using native php formating.
*/
class GregorianCalendar implements CalendarInterface
{
* @inheritDoc
public function format(DateTimeInterface $input, $format)
return $input->format($format);
}
public function formatDateRepresentation(DateRepresentationInterface $input, $format)
throw new RuntimeException('Not implemented');
public function parse($input, $format, DateTimeZone $timezone = null)
if ($timezone !== null) {
return DateTimeImmutable::createFromFormat($format, $input, $timezone) ?: null;
return DateTimeImmutable::createFromFormat($format, $input) ?: null;
public function parseToDateRepresentation($input, $format, DateTimeZone $timezone = null)