本文整理汇总了PHP中Timestamp::isValidDate方法的典型用法代码示例。如果您正苦于以下问题:PHP Timestamp::isValidDate方法的具体用法?PHP Timestamp::isValidDate怎么用?PHP Timestamp::isValidDate使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Timestamp
的用法示例。
在下文中一共展示了Timestamp::isValidDate方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: parse
//.........这里部分代码省略.........
break;
case 'hh':
case 'HH':
if (($hour = self::parseInteger($value, $i, 2, 2)) === false) {
return false;
}
$i += 2;
break;
case 'm':
if (($minute = self::parseInteger($value, $i, 1, 2)) === false) {
return false;
}
$i += strlen($minute);
break;
case 'mm':
if (($minute = self::parseInteger($value, $i, 2, 2)) === false) {
return false;
}
$i += 2;
break;
case 's':
if (($second = self::parseInteger($value, $i, 1, 2)) === false) {
return false;
}
$i += strlen($second);
break;
case 'ss':
if (($second = self::parseInteger($value, $i, 2, 2)) === false) {
return false;
}
$i += 2;
break;
case 'a':
if (($ampm = self::parseAmPm($value, $i)) === false) {
return false;
}
if (isset($hour)) {
if ($hour == 12 && $ampm === 'am') {
$hour = 0;
} else {
if ($hour < 12 && $ampm === 'pm') {
$hour += 12;
}
}
}
$i += 2;
break;
default:
$tn = strlen($token);
if ($i >= $n || substr($value, $i, $tn) !== $token) {
return false;
}
$i += $tn;
break;
}
}
if ($i < $n) {
return false;
}
if (!isset($year)) {
$year = isset($defaults['year']) ? $defaults['year'] : date('Y');
}
if (!isset($month)) {
$month = isset($defaults['month']) ? $defaults['month'] : date('n');
}
if (!isset($day)) {
$day = isset($defaults['day']) ? $defaults['day'] : date('j');
}
if (strlen($year) === 2) {
if ($year >= 70) {
$year += 1900;
} else {
$year += 2000;
}
}
$year = (int) $year;
$month = (int) $month;
$day = (int) $day;
if (!isset($hour) && !isset($minute) && !isset($second) && !isset($defaults['hour']) && !isset($defaults['minute']) && !isset($defaults['second'])) {
$hour = $minute = $second = 0;
} else {
if (!isset($hour)) {
$hour = isset($defaults['hour']) ? $defaults['hour'] : date('H');
}
if (!isset($minute)) {
$minute = isset($defaults['minute']) ? $defaults['minute'] : date('i');
}
if (!isset($second)) {
$second = isset($defaults['second']) ? $defaults['second'] : date('s');
}
$hour = (int) $hour;
$minute = (int) $minute;
$second = (int) $second;
}
if (Timestamp::isValidDate($year, $month, $day) && Timestamp::isValidTime($hour, $minute, $second)) {
return Timestamp::getTimestamp($hour, $minute, $second, $month, $day, $year);
} else {
return false;
}
}