8
8
$ uri1 = Uri \Rfc3986 \Uri::parse ("https://example.com " );
9
9
$ uri2 = $ uri1 ->withHost ("test.com " );
10
10
$ uri3 = $ uri2 ->withHost (null );
11
+ $ uri4 = $ uri3 ->withHost ("t%65st.com " ); // test.com
12
+ $ uri5 = $ uri4 ->withHost ("t%3As%2Ft.com " ); // t:s/t.com
13
+ $ uri6 = $ uri5 ->withHost ("test.com:8080 " ); // TODO should fail
11
14
12
- var_dump ($ uri1 ->toString ());
13
- var_dump ($ uri2 ->toString ());
14
- var_dump ($ uri3 ->toString ());
15
+ var_dump ($ uri2 ->getRawHost ());
16
+ var_dump ($ uri3 ->getRawHost ());
17
+ var_dump ($ uri4 ->getRawHost ());
18
+ var_dump ($ uri5 ->getRawHost ());
19
+ var_dump ($ uri6 ->getRawHost ());
20
+
21
+ try {
22
+ $ uri4 ->withHost ("t:s/t.com " );
23
+ } catch (Uri \InvalidUriException $ e ) {
24
+ echo $ e ->getMessage () . "\n" ;
25
+ }
15
26
16
27
$ uri1 = Uri \Rfc3986 \Uri::parse ("ftp://foo.com?query=abc#foo " );
17
28
$ uri2 = $ uri1 ->withHost ("test.com " );
18
29
19
- var_dump ($ uri1 ->toString ());
20
- var_dump ($ uri2 ->toString ());
30
+ var_dump ($ uri1 ->getRawHost ());
31
+ var_dump ($ uri2 ->getRawHost ());
21
32
22
33
$ uri1 = Uri \Rfc3986 \Uri::parse ("/path?query=abc#foo " );
23
34
$ uri2 = $ uri1 ->withHost ("test.com " );
24
35
25
- var_dump ($ uri1 ->toString ());
26
- var_dump ($ uri2 ->toString ());
36
+ var_dump ($ uri1 ->getRawHost ());
37
+ var_dump ($ uri2 ->getRawHost ());
27
38
28
39
$ url1 = Uri \WhatWg \Url::parse ("https://example.com " );
29
40
$ url2 = $ url1 ->withHost ("test.com " );
41
+ $ url3 = $ url2 ->withHost ("t%65st.com " ); // test.com
42
+ $ url4 = $ url3 ->withHost ("test.com:8080 " );
30
43
31
- var_dump ($ url1 ->toString ());
32
- var_dump ($ url2 ->toString ());
44
+ var_dump ($ url1 ->getHost ());
45
+ var_dump ($ url2 ->getHost ());
46
+ var_dump ($ url3 ->getHost ());
47
+ var_dump ($ url4 ->getHost ());
48
+ var_dump ($ url4 ->getPort ());
49
+
50
+ try {
51
+ $ url4 ->withHost ("t%3As%2Ft.com " ); // t:s/t.com
52
+ } catch (Uri \InvalidUriException $ e ) {
53
+ echo $ e ->getMessage () . "\n" ;
54
+ }
55
+
56
+ try {
57
+ $ url4 ->withHost ("t:s/t.com " );
58
+ } catch (Uri \InvalidUriException $ e ) {
59
+ echo $ e ->getMessage () . "\n" ;
60
+ }
33
61
34
62
try {
35
63
$ url2 ->withHost (null );
@@ -40,20 +68,27 @@ try {
40
68
$ url1 = Uri \WhatWg \Url::parse ("ftp://foo.com?query=abc#foo " );
41
69
$ url2 = $ url1 ->withHost ("test.com " );
42
70
43
- var_dump ($ url1 ->toString ());
44
- var_dump ($ url2 ->toString ());
71
+ var_dump ($ url1 ->getHost ());
72
+ var_dump ($ url2 ->getHost ());
45
73
46
74
?>
47
75
--EXPECT--
48
- string(19) "https://example.com"
49
- string(16) "https://test.com"
50
- string(8) "https://"
51
- string(27) "ftp://foo.com?query=abc#foo"
52
- string(28) "ftp://test.com?query=abc#foo"
53
- string(19) "/path?query=abc#foo"
54
- string(27) "test.com/path?query=abc#foo"
55
- string(20) "https://example.com/"
56
- string(17) "https://test.com/"
76
+ string(8) "test.com"
77
+ NULL
78
+ string(10) "t%65st.com"
79
+ string(13) "t%3As%2Ft.com"
80
+ string(8) "test.com"
81
+ URI parsing failed
82
+ string(7) "foo.com"
83
+ string(8) "test.com"
84
+ NULL
85
+ NULL
86
+ string(11) "example.com"
87
+ string(8) "test.com"
88
+ string(8) "test.com"
89
+ string(8) "test.com"
90
+ NULL
91
+ URI parsing failed
57
92
URI parsing failed
58
- string(28 ) "ftp:// foo.com/?query=abc#foo "
59
- string(29 ) "ftp:// test.com/?query=abc#foo "
93
+ string(7 ) "foo.com"
94
+ string(8 ) "test.com"
0 commit comments