Skip to content

Commit c4d9a37

Browse files
authored
Typed constants in date extension (#12361)
1 parent d19fad1 commit c4d9a37

File tree

3 files changed

+94
-139
lines changed

3 files changed

+94
-139
lines changed

UPGRADING

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -585,6 +585,9 @@ PHP 8.4 UPGRADE NOTES
585585
- Curl:
586586
. The Curl extension now requires at least libcurl 7.61.0.
587587

588+
- Date:
589+
. The class constants are typed now.
590+
588591
- Intl:
589592
. The class constants are typed now.
590593

ext/date/php_date.stub.php

Lines changed: 60 additions & 108 deletions
Original file line numberDiff line numberDiff line change
@@ -284,34 +284,34 @@ function date_sun_info(int $timestamp, float $latitude, float $longitude): array
284284

285285
interface DateTimeInterface
286286
{
287-
/** @var string */
288-
public const ATOM = DATE_ATOM;
289-
/** @var string */
290-
public const COOKIE = DATE_COOKIE;
291-
/** @var string */
292-
public const ISO8601 = DATE_ISO8601;
293-
/** @var string */
294-
public const ISO8601_EXPANDED = DATE_ISO8601_EXPANDED;
295-
/** @var string */
296-
public const RFC822 = DATE_RFC822;
297-
/** @var string */
298-
public const RFC850 = DATE_RFC850;
299-
/** @var string */
300-
public const RFC1036 = DATE_RFC1036;
301-
/** @var string */
302-
public const RFC1123 = DATE_RFC1123;
303-
/** @var string */
304-
public const RFC7231 = DATE_RFC7231;
305-
/** @var string */
306-
public const RFC2822 = DATE_RFC2822;
307-
/** @var string */
308-
public const RFC3339 = DATE_RFC3339;
309-
/** @var string */
310-
public const RFC3339_EXTENDED = DATE_RFC3339_EXTENDED;
311-
/** @var string */
312-
public const RSS = DATE_RSS;
313-
/** @var string */
314-
public const W3C = DATE_W3C;
287+
288+
public const string ATOM = DATE_ATOM;
289+
290+
public const string COOKIE = DATE_COOKIE;
291+
292+
public const string ISO8601 = DATE_ISO8601;
293+
294+
public const string ISO8601_EXPANDED = DATE_ISO8601_EXPANDED;
295+
296+
public const string RFC822 = DATE_RFC822;
297+
298+
public const string RFC850 = DATE_RFC850;
299+
300+
public const string RFC1036 = DATE_RFC1036;
301+
302+
public const string RFC1123 = DATE_RFC1123;
303+
304+
public const string RFC7231 = DATE_RFC7231;
305+
306+
public const string RFC2822 = DATE_RFC2822;
307+
308+
public const string RFC3339 = DATE_RFC3339;
309+
310+
public const string RFC3339_EXTENDED = DATE_RFC3339_EXTENDED;
311+
312+
public const string RSS = DATE_RSS;
313+
314+
public const string W3C = DATE_W3C;
315315

316316
/** @tentative-return-type */
317317
public function format(string $format): string;
@@ -555,76 +555,34 @@ public static function createFromInterface(DateTimeInterface $object): DateTimeI
555555

556556
class DateTimeZone
557557
{
558-
/**
559-
* @var int
560-
* @cvalue PHP_DATE_TIMEZONE_GROUP_AFRICA
561-
*/
562-
public const AFRICA = UNKNOWN;
563-
/**
564-
* @var int
565-
* @cvalue PHP_DATE_TIMEZONE_GROUP_AMERICA
566-
*/
567-
public const AMERICA = UNKNOWN;
568-
/**
569-
* @var int
570-
* @cvalue PHP_DATE_TIMEZONE_GROUP_ANTARCTICA
571-
*/
572-
public const ANTARCTICA = UNKNOWN;
573-
/**
574-
* @var int
575-
* @cvalue PHP_DATE_TIMEZONE_GROUP_ARCTIC
576-
*/
577-
public const ARCTIC = UNKNOWN;
578-
/**
579-
* @var int
580-
* @cvalue PHP_DATE_TIMEZONE_GROUP_ASIA
581-
*/
582-
public const ASIA = UNKNOWN;
583-
/**
584-
* @var int
585-
* @cvalue PHP_DATE_TIMEZONE_GROUP_ATLANTIC
586-
*/
587-
public const ATLANTIC = UNKNOWN;
588-
/**
589-
* @var int
590-
* @cvalue PHP_DATE_TIMEZONE_GROUP_AUSTRALIA
591-
*/
592-
public const AUSTRALIA = UNKNOWN;
593-
/**
594-
* @var int
595-
* @cvalue PHP_DATE_TIMEZONE_GROUP_EUROPE
596-
*/
597-
public const EUROPE = UNKNOWN;
598-
/**
599-
* @var int
600-
* @cvalue PHP_DATE_TIMEZONE_GROUP_INDIAN
601-
*/
602-
public const INDIAN = UNKNOWN;
603-
/**
604-
* @var int
605-
* @cvalue PHP_DATE_TIMEZONE_GROUP_PACIFIC
606-
*/
607-
public const PACIFIC = UNKNOWN;
608-
/**
609-
* @var int
610-
* @cvalue PHP_DATE_TIMEZONE_GROUP_UTC
611-
*/
612-
public const UTC = UNKNOWN;
613-
/**
614-
* @var int
615-
* @cvalue PHP_DATE_TIMEZONE_GROUP_ALL
616-
*/
617-
public const ALL = UNKNOWN;
618-
/**
619-
* @var int
620-
* @cvalue PHP_DATE_TIMEZONE_GROUP_ALL_W_BC
621-
*/
622-
public const ALL_WITH_BC = UNKNOWN;
623-
/**
624-
* @var int
625-
* @cvalue PHP_DATE_TIMEZONE_PER_COUNTRY
626-
*/
627-
public const PER_COUNTRY = UNKNOWN;
558+
/** @cvalue PHP_DATE_TIMEZONE_GROUP_AFRICA */
559+
public const int AFRICA = UNKNOWN;
560+
/** @cvalue PHP_DATE_TIMEZONE_GROUP_AMERICA */
561+
public const int AMERICA = UNKNOWN;
562+
/** @cvalue PHP_DATE_TIMEZONE_GROUP_ANTARCTICA */
563+
public const int ANTARCTICA = UNKNOWN;
564+
/** @cvalue PHP_DATE_TIMEZONE_GROUP_ARCTIC */
565+
public const int ARCTIC = UNKNOWN;
566+
/** @cvalue PHP_DATE_TIMEZONE_GROUP_ASIA */
567+
public const int ASIA = UNKNOWN;
568+
/** @cvalue PHP_DATE_TIMEZONE_GROUP_ATLANTIC */
569+
public const int ATLANTIC = UNKNOWN;
570+
/** @cvalue PHP_DATE_TIMEZONE_GROUP_AUSTRALIA */
571+
public const int AUSTRALIA = UNKNOWN;
572+
/** @cvalue PHP_DATE_TIMEZONE_GROUP_EUROPE */
573+
public const int EUROPE = UNKNOWN;
574+
/** @cvalue PHP_DATE_TIMEZONE_GROUP_INDIAN */
575+
public const int INDIAN = UNKNOWN;
576+
/** @cvalue PHP_DATE_TIMEZONE_GROUP_PACIFIC */
577+
public const int PACIFIC = UNKNOWN;
578+
/** @cvalue PHP_DATE_TIMEZONE_GROUP_UTC */
579+
public const int UTC = UNKNOWN;
580+
/** @cvalue PHP_DATE_TIMEZONE_GROUP_ALL */
581+
public const int ALL = UNKNOWN;
582+
/** @cvalue PHP_DATE_TIMEZONE_GROUP_ALL_W_BC */
583+
public const int ALL_WITH_BC = UNKNOWN;
584+
/** @cvalue PHP_DATE_TIMEZONE_PER_COUNTRY */
585+
public const int PER_COUNTRY = UNKNOWN;
628586

629587
public function __construct(string $timezone) {}
630588

@@ -707,16 +665,10 @@ public static function __set_state(array $array): DateInterval {}
707665

708666
class DatePeriod implements IteratorAggregate
709667
{
710-
/**
711-
* @var int
712-
* @cvalue PHP_DATE_PERIOD_EXCLUDE_START_DATE
713-
*/
714-
public const EXCLUDE_START_DATE = UNKNOWN;
715-
/**
716-
* @var int
717-
* @cvalue PHP_DATE_PERIOD_INCLUDE_END_DATE
718-
*/
719-
public const INCLUDE_END_DATE = UNKNOWN;
668+
/** @cvalue PHP_DATE_PERIOD_EXCLUDE_START_DATE */
669+
public const int EXCLUDE_START_DATE = UNKNOWN;
670+
/** @cvalue PHP_DATE_PERIOD_INCLUDE_END_DATE */
671+
public const int INCLUDE_END_DATE = UNKNOWN;
720672

721673
/** @readonly */
722674
public ?DateTimeInterface $start;

0 commit comments

Comments
 (0)