File: date_interval_non_relative_warning.phpt

package info (click to toggle)
php8.4 8.4.16-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 211,276 kB
  • sloc: ansic: 1,176,142; php: 35,419; sh: 11,964; cpp: 7,208; pascal: 4,951; javascript: 3,091; asm: 2,817; yacc: 2,411; makefile: 696; xml: 446; python: 301; awk: 148
file content (40 lines) | stat: -rw-r--r-- 1,417 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
--TEST--
GH-8458 (DateInterval::createFromDateString does not warn when non-relative items are present)
--FILE--
<?php
$formats = [
	'next weekday 15:30',
	'+5 hours noon',
	'-8 days March 23',
	'+72 seconds UTC',
];

foreach ($formats as $format) {
	try {
		$d = DateInterval::createFromDateString($format);
	} catch (DateMalformedIntervalStringException $e) {
		echo $e::class, ': ', $e->getMessage(), "\n";
	}
}

echo "====\n";

foreach ($formats as $format) {
	$d = date_interval_create_from_date_string($format);
}

?>
--EXPECTF--
DateMalformedIntervalStringException: String 'next weekday 15:30' contains non-relative elements
DateMalformedIntervalStringException: String '+5 hours noon' contains non-relative elements
DateMalformedIntervalStringException: String '-8 days March 23' contains non-relative elements
DateMalformedIntervalStringException: String '+72 seconds UTC' contains non-relative elements
====

Warning: date_interval_create_from_date_string(): String 'next weekday 15:30' contains non-relative elements in %s on line %d

Warning: date_interval_create_from_date_string(): String '+5 hours noon' contains non-relative elements in %s on line %d

Warning: date_interval_create_from_date_string(): String '-8 days March 23' contains non-relative elements in %s on line %d

Warning: date_interval_create_from_date_string(): String '+72 seconds UTC' contains non-relative elements in %s on line %d