close

 


parse_url() 是專門用來解析 URL 而不是 URI 的。
不過為遵從 PHP 向後兼容的需要有個例外,
對 file:// 協議允許三個斜線(file:///...)。
其它任何協議都不能這樣。


<?php
$url = 'http://username:password@hostname/path?arg=value#anchor';

print_r(parse_url($url));

echo parse_url($url, PHP_URL_PATH);
?>
以上例程會輸出:

Array
(
[scheme] => http
[host] => hostname
[user] => username
[pass] => password
[path] => /path
[query] => arg=value
[fragment] => anchor
)

例2 解析丟失協議的例子

<?php
$url = '//www.example.com/path?googleguy=googley';

// 在 5.4.7 之前這會輸出路徑 "//www.example.com/path"
var_dump(parse_url($url));
?>
以上例程會輸出:

array(3) {
["host"]=>
string(15) "www.example.com"
["path"]=>
string(5) "/path"
["query"]=>
string(17) "googleguy=googley"
}

arrow
arrow
    全站熱搜

    stockwfj3 發表在 痞客邦 留言(0) 人氣()