Datetimes
class Datetimes (View source)
The GenericDatabase\Helpers\Types\Specials\Datetimes class provides regular expression
patterns for parsing and validating date and time strings. It also includes
methods for retrieving the regular expression patterns and extracting information from the input string.
Example Usage:
//Parser a date em time on format: YYYY-DD-MM HH:mm:SS
$parse = Datetimes::getPattern("2023-28-02 10:45:30");
//Parser a date em time on format: YYYY-MM-DD HH:mm
$parse = Datetimes::getPattern("2024-02-29 10:45");
//Parser a date em time on format: MM-DD-YYYY HH:mm:SS zzz
$parse = Datetimes::getPattern("02-28-2023 10:45:30 +02:00");
//Parser a date em time on format: DD-MM-YYYY HH:mm:SS tt
$parse = Datetimes::getPattern("29-02-2024 10:45:30 PM");
//Parser a date em time on format: HH:MM:SS
$parse = Datetimes::getPattern("13:45:30");
Main functionalities:
- Provides regular expression patterns for various date and time formats
- Parses and validates date and time strings using the regular expression patterns
- Retrieves the regular expression patterns and extracted information from the input string
Methods:
getPattern(string $input):Parses and validates the input string using the regular expression patterns and returns the extracted information.
Fields
TIME_SEPARATOR: Regular expression pattern for matching time separators (e.g., ':', '.').TIMEZONE_HOURS_SEPARATOR: Regular expression pattern for matching timezone hours separators.TIMEZONE_MINUTES_SEPARATOR: Regular expression pattern for matching timezone minutes separators.TIMEZONE_SEPARATOR: Regular expression pattern for matching timezone separators.MERIDIEM_HOURS_SEPARATOR: Regular expression pattern for matching meridiem hours separators.MERIDIEM_MINUTES_SEPARATOR: Regular expression pattern for matching meridiem minutes separators.MERIDIEM_SEPARATOR: Regular expression pattern for matching meridiem separators.DIGITS: Regular expression pattern for matching digits (0-9).HOURS: Regular expression pattern for matching hours (00-23).MINUTES: Regular expression pattern for matching minutes (00-59).MERIDIEM_HOURS_12: Regular expression pattern for matching 12-hour format meridiem hours (01-12).TIMEZONE_HOURS_24: Regular expression pattern for matching 24-hour format timezone hours (00-23).MERIDIEM_MINUTES_12: Regular expression pattern for matching meridiem minutes (00-59).TIMEZONE_MINUTES_24: Regular expression pattern for matching timezone minutes (00-59).MERIDIEM_SECONDS_12: Regular expression pattern for matching meridiem seconds (00-59).TIMEZONE_SECONDS_24: Regular expression pattern for matching timezone seconds (00-59).MERIDIEM: Regular expression pattern for matching meridiem (AM/PM).TIMEZONE: Regular expression pattern for matching timezone (Z or +/-HH:MM).DATE_SEPARATOR: Regular expression pattern for matching date separators (e.g., '/', '-', '|').DATE_TIME_SEPARATOR: Regular expression pattern for matching date-time separators (e.g., 'T', '/', '-', '|').DAYS_28_SEPARATOR: Regular expression pattern for matching 28 days separator.DAYS_30_SEPARATOR: Regular expression pattern for matching 30 days separator.DAYS_31_SEPARATOR: Regular expression pattern for matching 31 days separator.MONTHS_28_SEPARATOR: Regular expression pattern for matching 28 months separator.MONTHS_30_SEPARATOR: Regular expression pattern for matching 30 months separator.MONTHS_31_SEPARATOR: Regular expression pattern for matching 31 months separator.LEAP_DAY_SEPARATOR: Regular expression pattern for matching leap day separator.LEAP_MONTH_SEPARATOR: Regular expression pattern for matching leap month separator.LEAP_YEAR_SEPARATOR: Regular expression pattern for matching leap year separator.YEAR_SEPARATOR: Regular expression pattern for matching year separator.DAYS_28: Regular expression pattern for matching 28 days (01-28).DAYS_30: Regular expression pattern for matching 30 days (01-30).DAYS_31: Regular expression pattern for matching 31 days (01-31).MONTHS_28: Regular expression pattern for matching 28 months (02).MONTHS_30: Regular expression pattern for matching 30 months (01-12 except 02).MONTHS_31: Regular expression pattern for matching 31 months (01-12 except 02).LEAP_DAY: Regular expression pattern for matching leap day (29).LEAP_MONTH: Regular expression pattern for matching leap month (02).LEAP_YEAR: Regular expression pattern for matching leap year.YEAR: Regular expression pattern for matching year (YYYY or YY).
Constants
| private TIME_SEPARATOR |
|
| private TIMEZONE_HOURS_SEPARATOR |
|
| private TIMEZONE_MINUTES_SEPARATOR |
|
| private TIMEZONE_SEPARATOR |
|
| private MERIDIEM_HOURS_SEPARATOR |
|
| private MERIDIEM_MINUTES_SEPARATOR |
|
| private MERIDIEM_SEPARATOR |
|
| private DIGITS |
|
| private HOURS |
|
| private MINUTES |
|
| private MERIDIEM_HOURS_12 |
|
| private TIMEZONE_HOURS_24 |
|
| private MERIDIEM_MINUTES_12 |
|
| private TIMEZONE_MINUTES_24 |
|
| private MERIDIEM_SECONDS_12 |
|
| private TIMEZONE_SECONDS_24 |
|
| private MERIDIEM |
|
| private TIMEZONE |
|
| private DATE_SEPARATOR |
|
| private DATE_TIME_SEPARATOR |
|
| private DAYS_28_SEPARATOR |
|
| private DAYS_30_SEPARATOR |
|
| private DAYS_31_SEPARATOR |
|
| private MONTHS_28_SEPARATOR |
|
| private MONTHS_30_SEPARATOR |
|
| private MONTHS_31_SEPARATOR |
|
| private LEAP_DAY_SEPARATOR |
|
| private LEAP_MONTH_SEPARATOR |
|
| private LEAP_YEAR_SEPARATOR |
|
| private YEAR_SEPARATOR |
|
| private DAYS_28 |
|
| private DAYS_30 |
|
| private DAYS_31 |
|
| private MONTHS_28 |
|
| private MONTHS_30 |
|
| private MONTHS_31 |
|
| private LEAP_DAY |
|
| private LEAP_MONTH |
|
| private LEAP_YEAR |
|
| private YEAR |
|
Methods
static array
getPattern(string $input)
Gets the pattern based on the input.
Details
static array
getPattern(string $input)
Gets the pattern based on the input.