如何获取网页的url
2个回答
展开全部
PHP从URL中提取网址,这里使用正则匹配preg_match()函数来实现,分两步来操作,第1步是从URL中提取主机名,第2步从主机名中提取得到后两段,通过这个具体示例你会对preg_match的用法有一个更深的了解。
1 <?php
2 // 从 URL 中取得主机名
3 preg_match("/^(http:\/\/)?([^\/]+)/i", "http://www.***.net/index.html", $matches);
4 $host = $matches[2];
5 // 从主机名中取得后面两段
6 preg_match("/[^\.\/]+\.[^\.\/]+$/", $host, $matches);
7 echo "domain name is: {$matches[0]}\n";
8 ?>
不过需要说明一下,据PHP官方手册上说,如果你仅仅想要检查一个字符串是否包含另外一个字符串, 不要使用preg_match()。 使用strpos()或strstr()替代完成效率会更高。
1 <?php
2 // 从 URL 中取得主机名
3 preg_match("/^(http:\/\/)?([^\/]+)/i", "http://www.***.net/index.html", $matches);
4 $host = $matches[2];
5 // 从主机名中取得后面两段
6 preg_match("/[^\.\/]+\.[^\.\/]+$/", $host, $matches);
7 echo "domain name is: {$matches[0]}\n";
8 ?>
不过需要说明一下,据PHP官方手册上说,如果你仅仅想要检查一个字符串是否包含另外一个字符串, 不要使用preg_match()。 使用strpos()或strstr()替代完成效率会更高。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询