I think it depends on the PHP version+curl version whether the query to api.weather.gov results in an HTTP/1.1 or HTTP/2 response.
Looking at the DNS for api.weather.gov shows
Dig api.weather.gov@208.67.222.222 ...
Recursive queries supported by this server
Query for api.weather.gov type=255 class=1
api.weather.gov CNAME (Canonical Name) sancert.weather.gov.edgekey.net
04/13/19 08:58:10 dig sancert.weather.gov.edgekey.net @ 208.67.222.222
Non-authoritative answer
Recursive queries supported by this server
Query for sancert.weather.gov.edgekey.net type=255 class=1
sancert.weather.gov.edgekey.net CNAME (Canonical Name) e278.dscg.akamaiedge.net
04/13/19 08:58:20 dig e278.dscg.akamaiedge.net @ 208.67.222.222
Dig e278.dscg.akamaiedge.net@208.67.222.222 ...
Non-authoritative answer
Recursive queries supported by this server
Query for e278.dscg.akamaiedge.net type=255 class=1
e278.dscg.akamaiedge.net AAAA (IPv6 Address) 2001:559:19:6083:0:0:0:116
e278.dscg.akamaiedge.net AAAA (IPv6 Address) 2001:559:19:6081:0:0:0:116
e278.dscg.akamaiedge.net A (Address) 184.27.36.18
so akamai is actually hosting it, and the akamai server does the response.
HTTP/2 responses are fairly new (
spec drafted in 2015) with
Apache support in V2.4 and
ngnix support in V1.9.5 since Sept 2015. Not a lot of websites have implemented HTTP/2, but akamai is now offering content that way.
PHP support for HTTP/2 has been available since PHP 7.0.7 and cURL 7.43.0