为什么parse_url在这种情况下返回空字符串?
<?php
$url='www.example.com';
$var= parse_url($url,PHP_URL_HOST);
print_r($var);
答案 0 :(得分:2)
这是因为www.vtechpcsupport.com
实际上并不是一个网址,因为它错过了scheme
部分(HTTP
左右),请尝试这样:
$url = 'http://www.vtechpcsupport.com';
$var = parse_url($url,PHP_URL_HOST);
print($var);
答案 1 :(得分:2)
该字符串被解释为 relative URL :
// print_r(parse_url('www.vtechpcsupport.com'))
Array
(
[path] => www.vtechpcsupport.com
)
答案 2 :(得分:1)
这是因为www.vtechpcsupport.com不是完整的网址。
您正在指定PHP_URL_HOST,因此该函数尝试仅提取URL的主机部分,这不存在,因为没有给出协议,URL被视为相对的 - 所以您希望成为主机名被解释为(相对)路径。
尝试使用:
$url='http://www.vtechpcsupport.com';
你应该得到你期望的行为。