PluginProbe ʕ •ᴥ•ʔ
Admin Columns / 7.0.13
Admin Columns v7.0.13
7.0.19 2.3.5 2.4 2.4.1 2.4.10 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.4.8 2.4.9 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.6.1 2.5.6.2 2.5.6.3 2.5.6.4 3.0 3.0.1 3.0.2 3.0.3 3.0.5 3.0.7 3.1 3.1.1 3.1.10 3.1.2 3.1.3 3.1.5 3.2.3 3.2.7 3.3.1 3.4.1 3.4.6 3.4.8 4.0.1 4.0.3 4.1.6 4.2.2 4.2.5 4.3 4.3.2 4.4.1 4.4.4 4.4.5 4.5.5 4.6.1 4.7.18 4.7.19 4.7.20 4.7.7 7.0.13 7.0.14 7.0.16 trunk 1.0 1.1 1.1.3 1.2 1.2.1 1.3 1.3.1 1.4 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.5.1 1.4.6 1.4.6.1 1.4.6.2 1.4.6.3 1.4.6.4 1.4.7 1.4.8 1.4.9 2.0.0 2.0.1 2.0.2 2.0.3 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.2 2.2.1 2.2.1.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.5.1 2.2.6 2.2.6.1 2.2.6.2 2.2.6.3 2.2.6.4 2.2.7 2.2.8 2.2.8.1 2.2.9 2.3.1 2.3.2 2.3.3
codepress-admin-columns / classes / Expression / DateTimeFactory.php
codepress-admin-columns / classes / Expression Last commit date
Exception 3 months ago SpecificationFactory 3 months ago AggregateSpecification.php 3 months ago AndSpecification.php 3 months ago CollectionOperators.php 3 months ago CollectionSpecification.php 3 months ago ComparisonOperators.php 3 months ago ComparisonSpecification.php 3 months ago CompositeSpecification.php 3 months ago ContainsSpecification.php 3 months ago Context.php 3 months ago ContextAwareSpecification.php 3 months ago DateComparisonSpecification.php 3 months ago DateOperators.php 3 months ago DateRangeSpecification.php 3 months ago DateRelativeDaysSpecification.php 3 months ago DateRelativeDeductedSpecification.php 3 months ago DateSpecification.php 3 months ago DateTimeFactory.php 3 months ago DateTrait.php 3 months ago EndsWithSpecification.php 3 months ago FactSpecification.php 3 months ago FactTrait.php 3 months ago FloatComparisonSpecification.php 3 months ago FloatRangeSpecification.php 3 months ago IntegerComparisonSpecification.php 3 months ago IntegerRangeSpecification.php 3 months ago NotSpecification.php 3 months ago NullSpecification.php 3 months ago OperatorExpression.php 3 months ago OrSpecification.php 3 months ago RangeOperators.php 3 months ago RangeSpecification.php 3 months ago Specification.php 3 months ago SpecificationFactory.php 3 months ago StartsWithSpecification.php 3 months ago StringComparisonSpecification.php 3 months ago StringMatchSpecification.php 3 months ago StringOperators.php 3 months ago TypeSpecification.php 3 months ago TypeTrait.php 3 months ago Types.php 3 months ago
DateTimeFactory.php
46 lines
1 <?php
2
3 declare(strict_types=1);
4
5 namespace AC\Expression;
6
7 use AC\DateFormats;
8 use AC\Expression\Exception\InvalidDateFormatException;
9 use DateTime;
10 use DateTimeZone;
11
12 final class DateTimeFactory
13 {
14
15 public static function create(?DateTimeZone $timezone = null): DateTime
16 {
17 return new DateTime('now', self::resolve_timezone($timezone));
18 }
19
20 /**
21 * @throws InvalidDateFormatException
22 */
23 public static function create_from_format(
24 $date_time,
25 ?string $format = null,
26 ?DateTimeZone $timezone = null
27 ): DateTime {
28 $parsed = DateTime::createFromFormat(
29 $format ?: DateFormats::DATE_MYSQL,
30 $date_time,
31 self::resolve_timezone($timezone)
32 );
33
34 if ( ! $parsed) {
35 throw new InvalidDateFormatException($date_time, (string)$format);
36 }
37
38 return $parsed;
39 }
40
41 private static function resolve_timezone(?DateTimeZone $timezone): DateTimeZone
42 {
43 return $timezone ?? wp_timezone();
44 }
45
46 }