所以我有一个我正在尝试的网站。在URL中有信息,我想解析它并使用它来对mysql进行db调用:
http://www.relevant-info.org/home.html
我想把Url把它放到一个字符串中。
然后我想只从网址中获取'related-info'。
$webaddress = $_SERVER["SERVER_NAME"];
$parts = parse_url($webaddress);
$url = substr($Parts, 4, -4);
^我正在使用它并且我在虚拟机上获得了IP地址(它是一个centos 5.8灯)我正在测试这个,所以总之这个接缝到目前为止工作良好:)
答案 0 :(得分:1)
Relentless
的信用您可以使用PHP parse-url函数轻松找到它:parse_url
示例用法:如果您想获得'related-info', PHP 5.4 有效代码可能如下所示:
$Url = substr(parse_url("http://www.relevant-info.org/home.html")[1], 4, -4);
输出
相关-信息
适用于PHP 5.3及更低版本
$Parts = parse_url("http://www.relevant-info.org/home.html");
$Url = substr($Parts, 4, -4);
在未来的情况下,如果您没有像parse-url这样的花哨功能,可以使用 Regex 或使用str_split
请记住,str_split需要更少的资源
答案 1 :(得分:0)
我有另一个好主意!
爆炸怎么样?
var_dump(explode('.', 'http://www.relevant-info.org/home.html'));
array(4) {
[0]=>
string(10) "http://www"
[1]=>
string(13) "relevant-info"
[2]=>
string(8) "org/home"
[3]=>
string(4) "html"
}
答案 2 :(得分:-1)
parse_url无济于事,因为它不会拆分域。
我建议使用正则表达式。您只使用www子域名,如下所示:
preg_match(#http(s)?://(www.)?(.+?)\..*#, $subject, $matches)
$matches[3]
应包含TLD的子域